source('9. load_pkgs_BcellAnalysis.R')
Registered S3 method overwritten by 'data.table':
method from
print.data.table
Registered S3 method overwritten by 'htmlwidgets':
method from
print.htmlwidget tools:rstudio
Attaching SeuratObject
Loading required package: plyr
Loading required package: dplyr
Attaching package: ‘dplyr’
The following objects are masked from ‘package:plyr’:
arrange, count, desc, failwith, id, mutate, rename, summarise, summarize
The following objects are masked from ‘package:stats’:
filter, lag
The following objects are masked from ‘package:base’:
intersect, setdiff, setequal, union
Loading required package: ggplot2
Loading required package: ggpubr
Attaching package: ‘ggpubr’
The following object is masked from ‘package:plyr’:
mutate
Loading required package: MLEcell
Loading required package: sparseMatrixStats
Loading required package: MatrixGenerics
Loading required package: matrixStats
Attaching package: ‘matrixStats’
The following object is masked from ‘package:dplyr’:
count
The following object is masked from ‘package:plyr’:
count
Attaching package: ‘MatrixGenerics’
The following objects are masked from ‘package:matrixStats’:
colAlls, colAnyNAs, colAnys, colAvgsPerRowSet, colCollapse, colCounts, colCummaxs, colCummins, colCumprods, colCumsums, colDiffs, colIQRDiffs,
colIQRs, colLogSumExps, colMadDiffs, colMads, colMaxs, colMeans2, colMedians, colMins, colOrderStats, colProds, colQuantiles, colRanges, colRanks,
colSdDiffs, colSds, colSums2, colTabulates, colVarDiffs, colVars, colWeightedMads, colWeightedMeans, colWeightedMedians, colWeightedSds,
colWeightedVars, rowAlls, rowAnyNAs, rowAnys, rowAvgsPerColSet, rowCollapse, rowCounts, rowCummaxs, rowCummins, rowCumprods, rowCumsums, rowDiffs,
rowIQRDiffs, rowIQRs, rowLogSumExps, rowMadDiffs, rowMads, rowMaxs, rowMeans2, rowMedians, rowMins, rowOrderStats, rowProds, rowQuantiles,
rowRanges, rowRanks, rowSdDiffs, rowSds, rowSums2, rowTabulates, rowVarDiffs, rowVars, rowWeightedMads, rowWeightedMeans, rowWeightedMedians,
rowWeightedSds, rowWeightedVars
Loading required package: reshape2
Loading required package: gridExtra
Attaching package: ‘gridExtra’
The following object is masked from ‘package:dplyr’:
combine
Loading required package: patchwork
Loading required package: scales
Loading required package: RColorBrewer
Loading required package: extrafont
Registering fonts with R
Loading required package: corrr
Loading required package: gtools
Loading required package: igraph
Attaching package: ‘igraph’
The following object is masked from ‘package:gtools’:
permute
The following objects are masked from ‘package:dplyr’:
as_data_frame, groups, union
The following objects are masked from ‘package:stats’:
decompose, spectrum
The following object is masked from ‘package:base’:
union
Loading required package: corrplot
corrplot 0.95 loaded
Loading required package: pheatmap
Loading required package: BiocManager
Bioconductor version 3.19 (BiocManager 1.30.25), R 4.4.1 (2024-06-14)
Loading required package: clusterProfiler
clusterProfiler v4.12.6 Learn more at https://yulab-smu.top/contribution-knowledge-mining/
Please cite:
Guangchuang Yu, Li-Gen Wang, Yanyan Han and Qing-Yu He. clusterProfiler: an R package for comparing biological themes among gene clusters. OMICS: A
Journal of Integrative Biology. 2012, 16(5):284-287
Attaching package: ‘clusterProfiler’
The following object is masked from ‘package:igraph’:
simplify
The following objects are masked from ‘package:plyr’:
arrange, mutate, rename, summarise
The following object is masked from ‘package:stats’:
filter
Loading required package: org.Hs.eg.db
Loading required package: AnnotationDbi
Loading required package: stats4
Loading required package: BiocGenerics
Attaching package: ‘BiocGenerics’
The following objects are masked from ‘package:igraph’:
normalize, path, union
The following object is masked from ‘package:gridExtra’:
combine
The following objects are masked from ‘package:dplyr’:
combine, intersect, setdiff, union
The following objects are masked from ‘package:stats’:
IQR, mad, sd, var, xtabs
The following objects are masked from ‘package:base’:
anyDuplicated, aperm, append, as.data.frame, basename, cbind, colnames, dirname, do.call, duplicated, eval, evalq, Filter, Find, get, grep, grepl,
intersect, is.unsorted, lapply, Map, mapply, match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, Position, rank, rbind, Reduce, rownames,
sapply, setdiff, table, tapply, union, unique, unsplit, which.max, which.min
Loading required package: Biobase
Welcome to Bioconductor
Vignettes contain introductory material; view with 'browseVignettes()'. To cite Bioconductor, see 'citation("Biobase")', and for packages
'citation("pkgname")'.
Attaching package: ‘Biobase’
The following object is masked from ‘package:sparseMatrixStats’:
rowMedians
The following object is masked from ‘package:MatrixGenerics’:
rowMedians
The following objects are masked from ‘package:matrixStats’:
anyMissing, rowMedians
Loading required package: IRanges
Loading required package: S4Vectors
Attaching package: ‘S4Vectors’
The following object is masked from ‘package:clusterProfiler’:
rename
The following objects are masked from ‘package:dplyr’:
first, rename
The following object is masked from ‘package:plyr’:
rename
The following object is masked from ‘package:utils’:
findMatches
The following objects are masked from ‘package:base’:
expand.grid, I, unname
Attaching package: ‘IRanges’
The following object is masked from ‘package:clusterProfiler’:
slice
The following objects are masked from ‘package:dplyr’:
collapse, desc, slice
The following object is masked from ‘package:plyr’:
desc
Attaching package: ‘AnnotationDbi’
The following object is masked from ‘package:clusterProfiler’:
select
The following object is masked from ‘package:dplyr’:
select
Loading required package: usedist
Loading required package: lmtest
Loading required package: zoo
Attaching package: ‘zoo’
The following objects are masked from ‘package:base’:
as.Date, as.Date.numeric
Loading required package: sandwich
Loading required package: broom
loadfonts('pdf')
theme_set(theme_classic())
my_theme <- theme(
text = element_text(family = 'ArialMT'),
axis.line = element_line(linewidth = 1),
axis.ticks = element_line(linewidth = 0.5),
axis.title = element_text(size = 10),
axis.text = element_text(size = 8),
legend.title = element_text(size = 8),
legend.text = element_text(size = 8)
)
theme_update(
text = element_text(family = 'ArialMT'),
axis.line = element_line(linewidth = 1),
axis.ticks = element_line(linewidth = 0.5),
axis.title = element_text(size = 10),
axis.text = element_text(size = 8),
legend.title = element_text(size = 8),
legend.text = element_text(size = 8))
Function that creates an adjacency matrix by querying each cell for the cell types of each target cell within a certian distance X, then sums across each cell type.
# Define function
make_adj_mat <- function(
# output of dist function
dist_obj,
# named list of cell names and cell types
annot_list,
# distance
distX,
# collapse query cells? (i.e. columns)
collapse_query = T) {
## retrieve matrix object from dist object
dmat <-as.matrix(dist_obj)
## iterate through each query cell
tmpmat <- sapply(colnames(dmat), function(cellid) {
### obtain all target cells within distX distance
cell <- dmat[,cellid]
cell_fil <- cell[which((cell < distX) & (cell != 0))]
### get the cell type of each cell and count using the annot dataframe
out <- t(as.matrix(table(annot_list[names(cell_fil)])))
row.names(out) <- cellid
return(out)
})
## put all cells together
tmpmat <- rbind.fill.matrix(tmpmat)
row.names(tmpmat) <- colnames(dmat)
## add clust to each query cell
tmpmat <- as.data.frame(tmpmat)
tmpmat$celltype <- annot_list[row.names(tmpmat)]
## collapse all query cells into clust as well
if(collapse_query){
outmat <- tmpmat %>% group_by(celltype) %>%
summarise(across(everything(), ~ sum(., na.rm=T)))
rnames <- outmat$celltype # make rownames the cell type
outmat <- as.matrix(outmat[,which(colnames(outmat) !='celltype')]) # remove celltype column
row.names(outmat) <- rnames
outmat <- outmat[colnames(outmat),] # make rownames and colnames the same order
} else {
outmat <- tmpmat
}
## return the final dataframe
return(outmat)
}
Going to use a hypergeometric distribution of edges ab, where a = celltype 1 (ct1), b = celltype2 (ct2), and: * x = observed number of times ab is seen in the data * m = total number of possible edges that include ab * if a != b: m = (Na * Nb) * if a == b: m = choose(Na,2) * n = total number of possible edges that DON’T include ab: [ (((Nt*Nt)-Nt)/2) - m ] (cells can’t be their own edge; draw a dummy matrix to make sense of this formula) * k = number of edges in the dataset
Note that it’s ok to add these values together across cells from the same “group”
# Define function
adj_mat_to_hypergeo_params <- function(
# adjacency matrix
outmat,
# named vector of number of cells of each type in the dataset. Names must match adjacency matrix column and row names
nctypes)
{
# ensure that all cell types are found in each of
## rownames outmat
## colnames outmat
## names of nctype
if(any(row.names(outmat) != colnames(outmat))) {
stop("Row names and column names of outmat do not match.")
}
if(!(all(row.names(outmat) %in% names(nctypes)) & all(names(nctypes) %in% row.names(outmat)))) {
stop("Row names of outmat and names of nctype do not match.")
}
## create output dataframe:
### determine unique combinations of cell types
#### sort nctypes first to make sure that the combinations are made correctly
out <- as.data.frame(combinations(n = length(names(nctypes)),
r = 2,
v = sort(names(nctypes)),
repeats.allowed = T))
colnames(out) <- c('ct1', 'ct2')
## calc total number of each cell type in dataset
nt_cell <- sum(nctypes)
nt_edge <- sum(outmat)/2
## for each cell in the adjacency matrix, define parameters of hypergeometric distribution
## if output = 'hyper_fit', then determine p values and expected number of edges given the params
params <- t(apply(out, 1, function(r) {
### define ct1 and ct2
ct1 = unlist(r['ct1'])
ct2 = unlist(r['ct2'])
### define parameters of hypergeometric distribution
x <- outmat[ct2, ct1]
if(ct1==ct2) {
m <- choose(nctypes[ct1], 2)} else {
m <- nctypes[ct1] * nctypes[ct2]}
n <- ((nt_cell * nt_cell) - nt_cell)/2 - m
k <- nt_edge
### return parameters
return(c(m, n, k, x))
}))
out <- cbind(out, params)
colnames(out) <- c('ct1', 'ct2', 'm', 'n', 'k', 'x')
return(out)
}
This function fits the data to a hypergeometric distribution and calculates fold increased interactions over expected
# Define function
fit_hyper_geo <- function(
# the number of observed interactions between two cell ty pes
observed_edge_n,
# the expected hyperparameters for those two cell types
expec_hyperparams
){
## calc the expected number of edges
expec <- n*K/N
## calc the fold increase of observed / expected
foldincr <- observed_edge_n / expec
## calc the p value
pval <- phyper(q=x,
m=m,
k=k,
n=n,
lower.tail = T,
log.p = T)
## return the data
out = list(expec, foldincr, pval)
names(out) = c('null.expec.edges', 'fold.incr.over.null', 'p.val')
return(out)
}
genemods_mle_findmarkers <- function(seurat_obj, # Seurat object
rawdata = NULL, # sparse counts matrix, rows = genes, columns = cells
mle_negm, # vector of mean negprobe counts per cell, see "insitutype" function
mle_cohort, # dataframe of parameters used for fastCohorting, see "insitutype" function
mle_nclust = NULL, # vector of length 2 specifying the minimum and maximum number of clusters for MLE cell to generate
logfc_min = 0.5 # minimum log2fc required for genes to be designated as marker genes of a subcluster
) {
# define raw data if undefined
if(is.null(rawdata)) {
rawdata <- seurat_obj@assays$nanostrRNA@counts
}
# define nclust if undefined
if(is.null(mle_nclust)) {
mle_nclust <- c(2,
## the maximum number of clusters should either be the lesser of: (a) the number of genes or (b) the number of cells / 10, assuming that clusters on average should have at least 10 cells
min(c(nrow(raw), round(ncol(raw)/10))))
}
# Perform unsupervised cell clustering
## Cohort cells
mle_coho <- fastCohorting(mat = mle_cohort,
gaussian_transform = TRUE)
## Cluster cells
mle_unsup <- insitutype(counts = t(as.matrix(rawdata)),
neg = mle_ngem,
cohort = mle_coho,
n_clusts = mle_nclust,
reference_profiles = NULL) # NULL value runs unsupervised clustering
## Plot clusters
mle_hm <- heatmap(sweep(mle_unsup$profiles,
1,
pmax(apply(mle_unsup$profiles, 1, max),
.2),
"/"),
scale = "none",
main = "Subcluster Mean Expression Profiles")
## Add cluster data to Seurat object
seurat_obj <- AddMetaData(seurat_obj,
data.frame(mle_unsup$clust))
# Run Marker Gene analysis
Idents(object = seurat_obj) <- seurat_obj@meta.data$'mle_subclust'
mle_subclust_markers <- FindAllMarkers(seurat_obj,
only.pos = TRUE,
min.pct = 0.25)
# Output
out <- list()
out$cell_cluster_heatmap <- mle_hm
return(out)
}
set.seed(0)
load("processed_data/cleaneddata.RData") # scRNAseq data
load("processed_data/cannot with distances from gloms.RData") # glomerular distance information from Patrick
context <- readRDS('processed_data/context4.RDS')
names(context) <- colnames(raw)
contam <- readRDS('processed_data/toomuchcontam.RDS') # gene contamination calls by Patrick
To remove genes that are “expressed” in cells due to poor segmentation, I will use Patrick’s contamination dataset: “contaminating transcripts from imperfect cell segmentation – e.g. if a B-cell is surrounded by PCT cells, then when we occasionally draw a cell boundary wrong we’ll place some PCT transcripts in a B-cell. So if any of your clusters are driven by genes typical of another cell type, suspect an artifact. For each cell type x gene, the attached matrix measures how much the gene comes from the appropriate cell type vs. from contamination – higher values mean more pure / less contaminated data. You can use this to check if any of your B-cell cluster marker genes are contaminants. For differential expression, I’m only considering genes with values above 0.2.”
Will use cotamstat.RDS to look at the contamination rates from the gene. We can look at each statistically significant gene
Distribution of gene contamination scores
cd4_tcell_types <- c( "T CD4 memory",
"T CD4 naive",
"Treg")
cd8_tcell_types <- c( "T CD8 memory",
"T CD8 naive")
glomcell_types <- c("Podocyte",
"Glomerular.endothelium",
"Mesangial.cell",
"Parietal.epithelium")
vesslcell_types <- c("Vascular.pericyte",
"Peritubular.capillary.endothelium.1",
"Peritubular.capillary.endothelium.2",
"Ascending.vasa.recta.endothelium",
"Descending.vasa.recta.endothelium")
tubcell_types <- c("Connecting.tubule",
"PCT",
"Principal.cell",
"Type.A.intercalated.cell",
"Type.B.intercalated.cell",
"Pelvic.epithelium",
"Thick.ascending.limb.of.Loop.of.Henle",
"Indistinct.intercalated.cell",
"Transitional.urothelium",
"Epithelial.progenitor.cell")
innate_lymph <- c("NK")
interstcell_types <- c("Myofibroblast",
"Fibroblast")
# Define cell types
all_cell_types <- levels(as.factor(clust))
imm_cell_types <- c("B-cell",
"macrophage",
"mast",
"mDC",
"monocyte",
"neutrophil",
"NK",
"pDC",
"plasmablast",
"T CD4 memory",
"T CD4 naive",
"T CD8 memory",
"T CD8 naive",
"Treg")
b_cell_types <- c("B-cell",
"plasmablast")
my_cell_types <- c("macrophage",
"mast",
"mDC",
"monocyte",
"neutrophil",
"pDC")
str_cell_types <- subset(all_cell_types,
!(all_cell_types %in% imm_cell_types) &
(all_cell_types != "NotDet"))
basic_cats <- function(x) {
if(x %in% b_cell_types) { return('bcell') } else {
if(x %in% cd4_tcell_types) { return('tcell_cd4') } else {
if(x %in% cd8_tcell_types) { return('tcell_cd8') } else {
if(x %in% my_cell_types) { return('mycell') } else {
if(x %in% glomcell_types) {return('glomcell') } else {
if(x %in% vesslcell_types) {return('vesslcell')} else {
if(x %in% tubcell_types) {return('tubcell')} else {
if(x %in% interstcell_types) {return('interstcell')} else {
if(x %in% innate_lymph) {return('NKcell')}
return("ERROR")
}
}
}
}
}
}
}
}
}
# organize metadata
annot <- merge(annot, data.frame(clust), by.x = "cell_ID", by.y = "row.names")
# add cell calls
row.names(annot) <- annot$cell_ID
# annotate cells with larger cell type bins
annot$basictype <- sapply(annot$clust, basic_cats)
annot$alpha <- sapply(annot$basictype, function(x) {
if(x %in% c('tcell', 'bcell', 'mycell')) {return(1)} else
{return(0.2)}
})
# refine annotation of cd4 and cd8 t cells, to combine cells together
subset_tmp <- which(annot$basictype %in% c('tcell_cd4', 'tcell_cd8'))
annot[subset_tmp,'clust'] <- annot[subset_tmp,'basictype']
tmp <- as.data.frame(contam[,c(b_cell_types)])
tmp$maxval <- unlist(apply(tmp, 1, max))
ggplot(tmp, aes(x = maxval)) + geom_density()
# Define contaminated genes for B cells
b_cell_uncontam <- row.names(
data.frame(!(contam[,b_cell_types])) %>%
filter_all(all_vars(.))
)
Will use Seurat to obtain UMAP to cluster cells
# Creat Seurat Object
## prepare all annotations
annot$context <- context[annot$cell_ID]
annot <- bind_cols(annot, cannot[annot$cell_ID,c('in.glom', 'inside.glom','position.vs.glom', 'closest.glom')])
## B-cells
bcell_seurat <- CreateSeuratObject(
counts = raw[c(b_cell_uncontam, 'HBB'),],
project = "LN_spatial",
assay = "nanostrRNA",
meta.data = annot
)
### only B-cell annotation
bcell_seurat <- subset(bcell_seurat,
subset = clust %in% b_cell_types)
# Scale data
bcell_seurat@meta.data$log10totalcounts <- sapply(bcell_seurat@meta.data$nCount_nanostrRNA, log10)
bcell_seurat <- ScaleData(bcell_seurat,
features = c(b_cell_uncontam, 'HBB'),
model.use = 'negbinom',
vars.to.regress = 'log10totalcounts')
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======= | 7%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================ | 71%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|======================================================================================== | 78%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
## negative values in the Scale Data column correspond to 0 values in the expression data. Rather than let pseudocounts cause "negative gene expression", these values should be corrected to be zero
tru_val <- as.vector(bcell_seurat@assays$nanostrRNA@counts)
scaled <- as.vector(bcell_seurat@assays$nanostrRNA@scale.data)
toplot <- data.frame(counts = tru_val,
scaled = scaled)
ggplot(toplot, aes(x = counts, y = scaled)) + geom_point(alpha = 0.2, size = 0.2)
# Make all scaled values < 0 equal 0
bcell_seurat@assays$nanostrRNA@scale.data[which(bcell_seurat@assays$nanostrRNA@scale.data < 0)] <- 0
# Filter HBB+ cells
## Dist
cells_in_data <- colnames(bcell_seurat)
tmp <- data.frame(cell_ID = cells_in_data,
HBB = bcell_seurat@assays$nanostrRNA@scale.data['HBB', cells_in_data],
HBA = bcell_seurat@assays$nanostrRNA@scale.data['HBA1', cells_in_data])
ggplot(tmp, aes(x = HBA, y = HBB)) + geom_point()
HB_cells <- tmp[which((tmp$HBA > 2.5) |
tmp$HBB > 2.5), 'cell_ID']
nonHB_cells <- tmp$cell_ID[which(!(tmp$cell_ID %in% HB_cells))]
### update annot to include rbcs
annot[which(annot$cell_ID %in% HB_cells),'basictype'] <- 'rbc'
annot[which(annot$cell_ID %in% HB_cells),'clust'] <- 'rbc'
### No HB cells
bcell_seurat <- subset(bcell_seurat,
subset = cell_ID %in% nonHB_cells)
### No hemoglobin gene expression
all_genes <- row.names(bcell_seurat)
bcell_seurat <- subset(bcell_seurat,
features = all_genes[which(!(all_genes %in% c('HBB', 'HBA1')))])
bcell_all.genes <- rownames(bcell_seurat)
# Run PCA
## B-cells
bcell_seurat <- RunPCA(bcell_seurat, features = bcell_all.genes, npcs=20)
PC_ 1
Positive: MARCO, MMP3, CCL7, CLEC4D, RSPO2, IL36G, FOXP3, MMP1, LY75, IFNG
PGF, CYP19A1, GPER1, ACKR1, IFNL3, NLRC4, IAPP, GDNF, EFNB3, ADGRV1
VPREB3, KRT6B, CD8B, S100A8, ADGRB3, TNFRSF11A, ADGRB2, INHBB, CD40LG, IL24
Negative: CD53, S100A4, IL16, PTGES2, SELENOP, IL17D, STAT5A, TNFRSF17, LAIR1, LIF
CD70, LGALS9, WIF1, WNT7B, RPL32, MPO, BTG1, CD52, EFNA4, HLA-DQB1
MTRNR2L1, KRT13, CCRL2, C1QB, TNFRSF9, CSK, RAC2, ARHGDIB, IL15RA, PSCA
PC_ 2
Positive: KRT13, PSCA, LIF, EFNA4, IL17D, WNT7B, IL17A, TNFRSF9, CCRL2, PTGES2
TNFRSF17, STAT5A, CD70, MTRNR2L1, APOB, WIF1, MPO, LEP, TWIST2, KRT86
S100A4, LAIR1, CUZD1, KRT20, ADGRF4, RAD51, GDF3, CD53, IL20, LGALS9
Negative: XBP1, IFITM1, GPX1, MGP, COL3A1, IFI27, MZB1, C1QA, C1QC, CD81
TAGLN, CALD1, RPL34, HLA-DRB5, JCHAIN, IGKC, MALAT1, CD38, HSP90B1, COL1A1
BST2, CD163, CD27, IGHG2, TIMP1, HLA-DPA1, ITGB2, TYK2, IGHG1, SRGN
PC_ 3
Positive: PROKR1, SERPINB5, ATF3, DNTT, VEGFC, TNFRSF13B, CXCR5, ACTG2, BMP6, CCL13
NLRP2, GDNF, NRIP3, CCL28, FGG, TCL1A, TNFSF13B, AATK, SLC2A4, MMP3
ADGRV1, COL9A3, TLR3, ACKR3, LINC02446, SAA2, WNT5B, EFNB3, THBS2, CCL7
Negative: KRT13, LIF, PTGES2, TNFRSF17, C1QB, CCRL2, STAT5A, TNFRSF9, S100A4, CD53
MTRNR2L1, MPO, EFNA4, WNT7B, IL17A, IL17D, SELENOP, LGALS9, CD70, LAIR1
WIF1, HLA-DQA1, C1QA, HLA-DPA1, C1QC, PSCA, CD163, ITGB2, HLA-DRB5, TIMP1
PC_ 4
Positive: CCL5, GZMK, PTPRCAP, HLA-DQA1, FYB1, CD52, HLA-DPA1, HLA-DQB1, CD84, LYZ
CD2, CD37, NKG7, PRF1, PDCD1, ITGB2, NLRC5, CD3E, PTPRC, IL16
KLRK1, CD69, CST7, GZMH, ARHGDIB, IL2RG, BTG1, IL7R, GZMB, CASP8
Negative: MZB1, XBP1, TLR2, COL3A1, IGKC, CLEC4A, RPS4Y1, LPAR5, JCHAIN, MGP
PTGS2, IGHG2, SMARCB1, IGHG1, TNFAIP6, TAGLN, NRG4, NOD2, COL5A1, LUM
EPHB6, CSF1R, COL1A1, WNT5A, CD38, ANGPT2, BGN, HSP90B1, CALD1, TWIST1
PC_ 5
Positive: FYN, CLEC4A, CSF1R, IL12RB1, RPS4Y1, NRG4, EPHB6, NOD2, CCL5, SMARCB1
CXCL17, GDF3, TLR2, IL20, CCL3, PLAC8, TWIST1, CTLA4, RAC2, ACKR3
COL15A1, FYB1, CD2, RGS1, IL7R, TNFAIP6, CLOCK, CXCR4, PTGIS, ANGPT2
Negative: TSLP, XBP1, MPO, MZB1, COL3A1, ADGRA3, IGHG1, PTGDR2, WNT7A, PDGFD
WNT9A, IGHG2, KRT13, COL1A1, COL1A2, WNT7B, FGF12, WIF1, DMBT1, VEGFC
TAGLN, TNFRSF17, MGP, TNFRSF9, IGKC, MMP1, COL5A2, UCP1, CD38, COL5A3
ElbowPlot(bcell_seurat, ndims=20)
bcell_seurat <- RunUMAP(bcell_seurat, dims = 1:20)
Warning: The default method for RunUMAP has changed from calling Python UMAP via reticulate to the R-native UWOT using the cosine metric
To use Python UMAP via reticulate, set umap.method to 'umap-learn' and metric to 'correlation'
This message will be shown once per session
12:04:57 UMAP embedding parameters a = 0.9922 b = 1.112
12:04:57 Read 2897 rows and found 20 numeric columns
12:04:57 Using Annoy for neighbor search, n_neighbors = 30
12:04:57 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:04:58 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f3661fd7a4
12:04:58 Searching Annoy index using 1 thread, search_k = 3000
12:04:59 Annoy recall = 100%
12:04:59 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:05:00 Initializing from normalized Laplacian + noise (using RSpectra)
12:05:00 Commencing optimization for 500 epochs, with 124806 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:05:03 Optimization finished
# Run UMAP
## B-cells
bcell_seurat <- FindNeighbors(bcell_seurat, dims = 1:20)
Computing nearest neighbor graph
Computing SNN
bcell_seurat <- FindClusters(bcell_seurat, resolution = 1)
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 2897
Number of edges: 102784
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.6515
Number of communities: 10
Elapsed time: 0 seconds
bcell_seurat <- AddMetaData(bcell_seurat,
data.frame(bcell_seurat@reductions$umap@cell.embeddings))
DimPlot(bcell_seurat, reduction = 'umap') + plot_annotation(title='B-cell PCA Clusters')
ggplot(bcell_seurat@meta.data,
aes(x=UMAP_1,
y=UMAP_2,
color=log10totalcounts)) +
geom_point(size=0.5) +
ggtitle('B-cell UMAP with RNA Counts')
NA
NA
# b cell subclustering
bcell_cols <- which(clust %in% b_cell_types)
bcell_cnts <- raw[b_cell_uncontam,bcell_cols]
bcell_negm <- annot[bcell_cols,'negmean']
bcell_coho <- fastCohorting(annot[bcell_cols, c('Area',
'AspectRatio',
'Mean.PanCK',
'Mean.CD45',
'Mean.DAPI')],
gaussian_transform = TRUE)
fitting ...
|
| | 0%
|
|========================================================= | 50%
|
|==================================================================================================================| 100%
bcell_unsup <- insitutype(counts = t(as.matrix(bcell_cnts)),
neg = bcell_negm,
cohort = bcell_coho,
bg = NULL,
n_clusts = c(2, 4),
reference_profiles = NULL, # NULL value runs unsupervised clustering
)
1.1 cells per geometric bin.
Selecting optimal number of clusters from a range of 2 - 4
Clustering with n_clust = 2
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
Converged: <= 0.5% of cell type assignments changed in the last iteration.
==========================================================================
Clustering with n_clust = 4
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
Converged: <= 0.5% of cell type assignments changed in the last iteration.
==========================================================================
phase 1: random starts in 3000 cell subsets
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
iter 12
iter 13
iter 14
iter 15
iter 16
iter 17
iter 18
iter 19
iter 20
iter 21
iter 22
iter 23
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
iter 12
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
iter 12
iter 13
iter 14
iter 15
iter 16
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
iter 12
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
iter 12
iter 13
iter 14
iter 15
iter 16
iter 17
iter 18
iter 19
iter 20
iter 21
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
iter 12
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
iter 12
iter 13
iter 14
iter 15
iter 16
iter 17
iter 18
iter 19
iter 20
iter 21
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
iter 1
iter 2
iter 3
iter 4
iter 5
iter 6
iter 7
iter 8
iter 9
iter 10
iter 11
Converged: <= 0.2% of cell type assignments changed in the last iteration.
==========================================================================
phase 2: refining best random start in a 3000 cell subset
iter 1
iter 2
iter 3
iter 4
Converged: <= 0.1% of cell type assignments changed in the last iteration.
==========================================================================
phase 3: finalizing clusters in a 3000 cell subset
iter 1
iter 2
Converged: <= 0.01% of cell type assignments changed in the last iteration.
==========================================================================
phase 4: classifying all 3000 cells
# B-cell heatmap
str(bcell_unsup)
List of 5
$ clust : Named chr [1:3000] "d" "a" "d" "d" ...
..- attr(*, "names")= chr [1:3000] "c_1_13_59" "c_1_13_878" "c_1_13_1019" "c_1_13_1046" ...
$ prob : Named num [1:3000] 1 1 1 0.999 1 ...
..- attr(*, "names")= chr [1:3000] "c_1_13_59" "c_1_13_878" "c_1_13_1019" "c_1_13_1046" ...
$ profiles : num [1:502, 1:4] 0.0565 0.0141 0.1469 0.0381 0.1174 ...
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:502] "AATK" "ACKR1" "ACKR3" "ACTG2" ...
.. ..$ : chr [1:4] "a" "b" "c" "d"
$ logliks : num [1:3000, 1:4] -260 -140 -237 -225 -226 ...
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:3000] "c_1_13_59" "c_1_13_878" "c_1_13_1019" "c_1_13_1046" ...
.. ..$ : chr [1:4] "a" "b" "c" "d"
$ logliks_from_lost_celltypes: num[1:3000, 0 ]
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:3000] "c_1_13_59" "c_1_13_878" "c_1_13_1019" "c_1_13_1046" ...
.. ..$ : NULL
round(head(bcell_unsup$prob),2)
c_1_13_59 c_1_13_878 c_1_13_1019 c_1_13_1046 c_1_13_1195 c_1_13_1411
1 1 1 1 1 1
bcell_hm <- heatmap(sweep(bcell_unsup$profiles,
1,
pmax(apply(bcell_unsup$profiles, 1, max),
.2),
"/"),
scale = "none",
main = "B-cell Subcluster Mean Expression Profiles")
## B-cells
# define cluster colors:
cols <- c('#a6cee3','#1f78b4','#b2df8a','#33a02c')
cols <- cols[seq_along(unique(bcell_unsup$clust))]
names(cols) <- unique(bcell_unsup$clust)
# make the flightpath plot
fp <- flightpath_plot(flightpath_result = NULL, insitutype_result = bcell_unsup, col = cols[bcell_unsup$clust])
Saving flightpath_plot to: ./NBClust-Plots/2024-10-24_12-07-11-PDT-flightpath_plot.png
class(fp)
[1] "gg" "ggplot"
print(fp)
ggsave(fp, file="figures/bcell_MLEcell_fp.png")
Cannot find directory ]8;;file:///data/hps/home/nhasl2/LN_SpatialTranscriptomics/2024-April_NewData/figuresfigures]8;;.
ℹ Would you like to create a new directory?
1: Yes
2: No
Enter an item from the menu, or 0 to exit
1
✔ Created directory: ]8;;file:///data/hps/home/nhasl2/LN_SpatialTranscriptomics/2024-April_NewData/figuresfigures]8;;.
Saving 7.29 x 4.5 in image
# B-cells
bcell_seurat <- AddMetaData(bcell_seurat,
data.frame(bcell_unsup$clust))
# rename subcluster identity
new = c('B.4','B.1','B.3','B.2')
new = factor(new, levels = c('B.1', 'B.2', 'B.3', 'B.4'))
key = data.frame(old = letters[1:4],
new = new)
bcell_seurat@meta.data$bcell_subclust <- sapply(bcell_seurat@meta.data$bcell_unsup.clust,
function(o) {
return(key[which(key$old == o),'new'])
})
bcell_seurat@meta.data$bcell_subclust <- factor(bcell_seurat@meta.data$bcell_subclust)
bcellcols <- c('#66c2a5','#fc8d62','#8da0cb','#e78ac3')
ggplot(bcell_seurat@meta.data,
aes(x=UMAP_1,y=UMAP_2,color=bcell_subclust)) +
geom_point(size=1) +
scale_color_manual(values = bcellcols)
ggsave('figures/bcell_MLEcell_subclusts_UMAPspace.png',
height=5.5)
Saving 7.29 x 5.5 in image
saveRDS(bcell_seurat,
file = 'processed_data/bcell_seurat.RDS')
lapply(seq(from = 1.5, to = 2.5, by =0.1), function(x) {
print(x)
# filter and rescale the data
temp_seurat <- ScaleData(subset(bcell_seurat, subset = log10totalcounts > x),
features = c(bcell_all.genes),
model.use = 'negbinom',
vars.to.regress = 'log10totalcounts')
# Run PCA
temp_seurat <- RunPCA(temp_seurat, features = bcell_all.genes, npcs=20)
# Run UMAP
temp_seurat <- RunUMAP(temp_seurat, dims = 1:20)
# Plot
Idents(object = temp_seurat) <- temp_seurat@meta.data$'bcell_unsup.clust'
DimPlot(temp_seurat,
reduction = 'umap',
) + plot_annotation(title=paste0('B-cell Subclusters, log RNA count >', x))
})
[1] 1.5
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGHG2, IGKC, IGHG1, XBP1, MALAT1, MZB1, MZT2A, TYK2, MGP, IFITM1
COL3A1, HSP90B1, JCHAIN, GPX1, CALD1, C1QA, CD38, CD81, IFI27, TAGLN
RPL34, C1QC, COL1A1, IGHA1, FKBP11, CD27, BST2, TIMP1, HLA-DRB5, IRF4
Negative: PSCA, IL17D, EFNA4, LIF, WNT7B, KRT13, STAT5A, TNFRSF9, CD70, PTGES2
TNFRSF17, IL17A, CCRL2, MTRNR2L1, APOB, WIF1, LEP, CD53, TWIST2, S100A4
CUZD1, RAD51, TCL1A, KRT20, KRT86, RARG, SLC2A4, WNT9A, LGALS9, CLEC4A
PC_ 2
Positive: KRT13, LIF, PTGES2, CCRL2, MPO, TNFRSF17, TNFRSF9, IL17A, STAT5A, MTRNR2L1
EFNA4, IL17D, WNT7B, LAIR1, WIF1, CD70, IGHG1, S100A4, PSCA, SELENOP
C1QB, IGHG2, CD53, LGALS9, IGKC, APOB, KRT86, MKI67, ELANE, MZB1
Negative: PTPRCAP, CXCR5, CD37, HLA-DQB1, CD69, TNFSF13B, KRT15, IL2RG, CXCR4, PTPRC
IL2RB, TNFSF12, HLA-DRB5, CD48, MZT2A, TNFRSF13B, ARHGDIB, MRC1, CD44, RUNX3
CSK, LYZ, GPR183, ACTG2, VEGFC, JAK2, FES, LINC02446, OASL, GZMH
PC_ 3
Positive: HLA-DPA1, HLA-DQA1, C1QB, HLA-DRB5, C1QA, HLA-DQB1, C1QC, ITGB2, CCL5, CD53
LYZ, S100A4, FYB1, CD163, CD68, CD52, KRT13, CD37, IL16, STAT5A
CD2, LGALS9, PTPRCAP, NLRC5, LIF, PTGES2, CD3E, MALAT1, PTPRC, GPX1
Negative: MZB1, XBP1, IGHG2, IGHG1, LPAR5, IGKC, TNFAIP6, RPS4Y1, TLR2, WNT5A
JCHAIN, SMARCB1, COL3A1, CD38, PLA2R1, CLEC4A, PTGS2, ADGRV1, COL5A1, DNTT
MGP, TAGLN, CSF2, COL1A1, ATF3, IRF4, AGR2, TSLP, FKBP11, HSP90B1
PC_ 4
Positive: WNT7A, PTGDR2, VEGFC, TSLP, IGHG1, ADGRA3, WNT9A, IGHG2, CXCR5, WIF1
IL12A, KRT13, WNT7B, FGF12, DMBT1, FGG, TNFRSF9, SERPINB5, GZMH, FZD6
MMP1, TNFRSF13B, CD5L, ADGRG5, NRIP3, ATF3, MPO, TNFRSF17, IL17D, XCL2
Negative: CSF1R, CLEC4A, TLR2, RPS4Y1, FYN, NOD2, IL12RB1, NRG4, SMARCB1, EPHB6
CXCL17, TWIST1, CCL3, IL20, GDF3, COL15A1, PTGS2, RAC2, PLAC8, TNFAIP6
CLOCK, CTLA4, ANGPT2, IL15RA, ACKR3, PTGIS, WNT5A, NANOG, AZU1, RGS1
PC_ 5
Positive: TAGLN, COL3A1, MGP, COL1A1, LUM, COL1A2, DCN, C1QC, COL6A2, C1QA
TIMP1, CD81, MMP2, C1QB, CALD1, SELENOP, CD163, CXCL12, BGN, COL6A3
PDGFRA, CD68, HGF, SLC40A1, SNAI2, MS4A4A, CYP1B1, IGFBP6, GPX1, MRC2
Negative: MZB1, MZT2A, MALAT1, CD27, XBP1, CD38, FKBP11, CCL5, IL2RG, DUSP5
FYN, CD3E, IRF4, JCHAIN, ST6GAL1, IGHG2, KLF2, HSP90B1, CD8A, NLRC5
CST7, CD52, IGHA1, CD79A, ITGAL, DUSP2, RAC2, GAS6, CSF2RB, GZMA
12:08:03 UMAP embedding parameters a = 0.9922 b = 1.112
12:08:03 Read 2724 rows and found 20 numeric columns
12:08:03 Using Annoy for neighbor search, n_neighbors = 30
12:08:03 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:08:03 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f33b060159
12:08:03 Searching Annoy index using 1 thread, search_k = 3000
12:08:04 Annoy recall = 100%
12:08:04 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:08:05 Initializing from normalized Laplacian + noise (using RSpectra)
12:08:05 Commencing optimization for 500 epochs, with 111790 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:08:08 Optimization finished
[1] 1.6
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGHG2, IGKC, IGHG1, MALAT1, XBP1, MZB1, MZT2A, TYK2, MGP, IFITM1
COL3A1, HSP90B1, JCHAIN, GPX1, CALD1, CD38, C1QA, CD81, IFI27, TAGLN
RPL34, C1QC, COL1A1, IGHA1, FKBP11, CD27, BST2, TIMP1, HLA-DRB5, IRF4
Negative: PSCA, IL17D, EFNA4, LIF, WNT7B, KRT13, STAT5A, CD70, TNFRSF9, PTGES2
TNFRSF17, IL17A, CCRL2, MTRNR2L1, APOB, CD53, LEP, WIF1, TWIST2, S100A4
CUZD1, RAD51, KRT20, KRT86, TCL1A, SLC2A4, RARG, LGALS9, CLEC4A, WNT9A
PC_ 2
Positive: LIF, KRT13, MPO, PTGES2, CCRL2, TNFRSF17, TNFRSF9, IL17A, MTRNR2L1, STAT5A
EFNA4, IL17D, LAIR1, WNT7B, IGHG1, WIF1, CD70, PSCA, S100A4, IGHG2
SELENOP, C1QB, CD53, IGKC, LGALS9, APOB, KRT86, MZB1, ELANE, MKI67
Negative: PTPRCAP, CXCR5, HLA-DQB1, CD37, CD69, KRT15, PTPRC, IL2RG, HLA-DRB5, CXCR4
IL2RB, TNFSF13B, TNFSF12, MZT2A, CD48, CD44, ARHGDIB, LYZ, TNFRSF13B, BTG1
MRC1, GPR183, RUNX3, FES, CSK, VEGFC, NLRC5, ACTG2, OASL, SELL
PC_ 3
Positive: MZB1, XBP1, IGHG2, LPAR5, IGHG1, IGKC, TNFAIP6, RPS4Y1, TLR2, WNT5A
JCHAIN, SMARCB1, PLA2R1, CD38, COL3A1, PTGS2, CLEC4A, ADGRV1, DNTT, ATF3
AGR2, TAGLN, COL5A1, CSF2, MGP, IRF4, PROKR1, FKBP11, CLOCK, HSP90B1
Negative: HLA-DPA1, HLA-DQA1, C1QB, HLA-DRB5, C1QA, HLA-DQB1, C1QC, ITGB2, CCL5, CD53
LYZ, S100A4, CD163, FYB1, CD68, KRT13, CD52, STAT5A, LIF, IL16
CD37, LGALS9, PTGES2, CD2, NLRC5, PTPRCAP, CD3E, MALAT1, CCRL2, EFNA4
PC_ 4
Positive: WNT7A, PTGDR2, VEGFC, IGHG1, TSLP, ADGRA3, WNT9A, IGHG2, CXCR5, KRT13
WIF1, WNT7B, IL12A, FGF12, GZMH, FZD6, MMP1, FGG, CD5L, TNFRSF9
TNFRSF13B, DMBT1, SERPINB5, NRIP3, ADGRG5, ATF3, TNFRSF17, WNT5B, MPO, XCL2
Negative: CSF1R, CLEC4A, TLR2, RPS4Y1, FYN, NOD2, IL12RB1, NRG4, SMARCB1, EPHB6
CXCL17, TWIST1, CCL3, IL20, GDF3, COL15A1, PTGS2, PLAC8, RAC2, TNFAIP6
CLOCK, CTLA4, ANGPT2, IL15RA, PTGIS, ACKR3, NANOG, WNT5A, AZU1, RGS1
PC_ 5
Positive: TAGLN, COL3A1, COL1A1, MGP, LUM, COL1A2, DCN, C1QC, COL6A2, C1QA
TIMP1, CD81, MMP2, CALD1, C1QB, CXCL12, SELENOP, CD163, BGN, COL6A3
PDGFRA, CD68, HGF, SLC40A1, SNAI2, MS4A4A, IGFBP6, CYP1B1, MRC2, GPX1
Negative: MZB1, MZT2A, MALAT1, CD27, XBP1, CD38, CCL5, FKBP11, IL2RG, FYN
DUSP5, CD3E, IRF4, JCHAIN, ST6GAL1, IGHG2, CD8A, KLF2, NLRC5, RAC2
HSP90B1, CST7, CD79A, DUSP2, CSF2RB, ITGAL, IGHA1, GAS6, CD52, CCR5
12:08:42 UMAP embedding parameters a = 0.9922 b = 1.112
12:08:42 Read 2606 rows and found 20 numeric columns
12:08:42 Using Annoy for neighbor search, n_neighbors = 30
12:08:42 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:08:42 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f36f4fec5
12:08:42 Searching Annoy index using 1 thread, search_k = 3000
12:08:42 Annoy recall = 100%
12:08:43 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:08:44 Initializing from normalized Laplacian + noise (using RSpectra)
12:08:44 Commencing optimization for 500 epochs, with 106558 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:08:47 Optimization finished
[1] 1.7
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGHG2, IGKC, IGHG1, MALAT1, XBP1, MZB1, MZT2A, TYK2, MGP, IFITM1
COL3A1, HSP90B1, JCHAIN, GPX1, CALD1, CD38, C1QA, CD81, TAGLN, IFI27
RPL34, C1QC, IGHA1, COL1A1, FKBP11, CD27, BST2, TIMP1, HLA-DRB5, IRF4
Negative: PSCA, IL17D, EFNA4, LIF, WNT7B, KRT13, STAT5A, CD70, TNFRSF9, PTGES2
IL17A, TNFRSF17, CCRL2, MTRNR2L1, APOB, CD53, WIF1, LEP, TWIST2, S100A4
CUZD1, KRT20, RAD51, TCL1A, RARG, KRT86, SLC2A4, LGALS9, GDF3, CTSW
PC_ 2
Positive: PTPRCAP, HLA-DQB1, CD37, CXCR5, CD69, CXCR4, HLA-DRB5, PTPRC, KRT15, IL2RG
IL2RB, TNFSF12, TNFSF13B, CD48, ARHGDIB, MZT2A, LYZ, CD44, MRC1, HLA-DPA1
ITGB2, FES, BTG1, GPR183, NLRC5, RUNX3, TNFRSF13B, JAK2, CSK, SELL
Negative: LIF, KRT13, MPO, PTGES2, CCRL2, TNFRSF17, IL17A, TNFRSF9, MTRNR2L1, EFNA4
STAT5A, IL17D, LAIR1, WNT7B, IGHG1, WIF1, CD70, PSCA, IGHG2, S100A4
SELENOP, C1QB, IGKC, CD53, LGALS9, APOB, KRT86, MZB1, LPAR5, ELANE
PC_ 3
Positive: HLA-DPA1, HLA-DQA1, C1QB, C1QA, HLA-DRB5, C1QC, HLA-DQB1, ITGB2, CCL5, CD53
S100A4, LYZ, CD163, FYB1, KRT13, CD68, STAT5A, LIF, PTGES2, CD52
LGALS9, IL16, CD37, CD2, CCRL2, NLRC5, EFNA4, TNFRSF9, TNFRSF17, PTPRCAP
Negative: MZB1, XBP1, IGHG2, LPAR5, RPS4Y1, TNFAIP6, IGKC, IGHG1, TLR2, WNT5A
JCHAIN, PLA2R1, SMARCB1, CD38, COL3A1, CLEC4A, ADGRV1, DNTT, PTGS2, ATF3
TAGLN, AGR2, MGP, CSF2, PROKR1, COL1A1, COL5A1, TWIST1, CLOCK, ACKR3
PC_ 4
Positive: WNT7A, VEGFC, PTGDR2, IGHG1, TSLP, IGHG2, WNT9A, KRT13, CXCR5, WIF1
WNT7B, ADGRA3, GZMH, FGG, FGF12, IL12A, CD5L, FZD6, DMBT1, TNFRSF9
NRIP3, MMP1, TNFRSF13B, WNT5B, IL17D, TNFRSF17, TNFSF9, ATF3, SERPINB5, EFNA4
Negative: CSF1R, CLEC4A, TLR2, RPS4Y1, NOD2, FYN, IL12RB1, NRG4, SMARCB1, EPHB6
CXCL17, CCL3, TWIST1, IL20, GDF3, COL15A1, TNFAIP6, PTGS2, PLAC8, RAC2
CLOCK, CTLA4, ANGPT2, IL15RA, ACKR3, PTGIS, NANOG, AZU1, WNT5A, C1QC
PC_ 5
Positive: TAGLN, COL1A1, COL3A1, MGP, LUM, COL1A2, DCN, COL6A2, C1QC, TIMP1
C1QA, CD81, MMP2, CALD1, CXCL12, BGN, SELENOP, COL6A3, C1QB, CD163
PDGFRA, HGF, CD68, SLC40A1, SNAI2, IGFBP6, CYP1B1, MS4A4A, MRC2, NGFR
Negative: MZB1, CD27, MALAT1, MZT2A, XBP1, CD38, CCL5, IL2RG, FKBP11, FYN
DUSP5, JCHAIN, ST6GAL1, IGHG2, CD3E, IRF4, CST7, CD8A, HSP90B1, RAC2
KLF2, GAS6, ITGAL, NLRC5, IGHA1, GZMA, DUSP2, CCR2, CD79A, CSF2RB
12:09:18 UMAP embedding parameters a = 0.9922 b = 1.112
12:09:18 Read 2470 rows and found 20 numeric columns
12:09:18 Using Annoy for neighbor search, n_neighbors = 30
12:09:18 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:09:18 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f33784dace
12:09:18 Searching Annoy index using 1 thread, search_k = 3000
12:09:19 Annoy recall = 100%
12:09:20 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:09:21 Initializing from normalized Laplacian + noise (using RSpectra)
12:09:21 Commencing optimization for 500 epochs, with 101004 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:09:23 Optimization finished
[1] 1.8
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGKC, IGHG2, IGHG1, XBP1, MALAT1, MZB1, MZT2A, TYK2, MGP, IFITM1
COL3A1, HSP90B1, JCHAIN, GPX1, CD38, CALD1, TAGLN, C1QA, CD81, IFI27
RPL34, C1QC, FKBP11, IGHA1, COL1A1, CD27, BST2, TIMP1, IRF4, HLA-DRB5
Negative: PSCA, IL17D, LIF, EFNA4, WNT7B, KRT13, STAT5A, TNFRSF9, IL17A, CD70
TNFRSF17, PTGES2, CCRL2, MTRNR2L1, CD53, APOB, WIF1, TWIST2, LEP, S100A4
KRT20, RAD51, CUZD1, TCL1A, RARG, LGALS9, SLC2A4, GDF3, CTSW, KRT86
PC_ 2
Positive: PTPRCAP, HLA-DQB1, HLA-DRB5, CD37, CD69, CXCR5, CXCR4, IL2RG, PTPRC, LYZ
KRT15, HLA-DPA1, TNFSF12, ARHGDIB, CD44, ITGB2, CD48, MZT2A, IL2RB, TNFSF13B
NLRC5, BTG1, CD52, MRC1, FES, JAK2, GPR183, RUNX3, CD3E, CCL5
Negative: LIF, KRT13, MPO, PTGES2, CCRL2, TNFRSF17, IL17A, TNFRSF9, MTRNR2L1, EFNA4
IL17D, IGHG1, STAT5A, LAIR1, WIF1, WNT7B, IGHG2, CD70, PSCA, S100A4
SELENOP, IGKC, C1QB, APOB, LGALS9, CD53, MZB1, LPAR5, KRT86, XBP1
PC_ 3
Positive: HLA-DPA1, HLA-DQA1, C1QB, C1QA, C1QC, HLA-DRB5, HLA-DQB1, ITGB2, CD53, CCL5
S100A4, LYZ, KRT13, CD163, LIF, STAT5A, FYB1, PTGES2, CD68, LGALS9
CCRL2, CD52, EFNA4, CD2, TNFRSF9, IL16, TNFRSF17, CD37, MTRNR2L1, NLRC5
Negative: MZB1, XBP1, LPAR5, RPS4Y1, IGHG2, TNFAIP6, IGKC, WNT5A, TLR2, PLA2R1
CD38, SMARCB1, JCHAIN, IGHG1, DNTT, ADGRV1, ATF3, AGR2, PTGS2, COL3A1
PROKR1, TSLP, COL1A1, TAGLN, CLEC4A, ACKR3, IRF4, CSF2, MGP, THBS2
PC_ 4
Positive: WNT7A, PTGDR2, IGHG1, VEGFC, WIF1, TSLP, KRT13, IGHG2, ADGRA3, GZMH
WNT7B, CXCR5, CD5L, TNFRSF9, FGG, WNT9A, TNFRSF17, FZD6, FGF12, IL17D
IL12A, NRIP3, DMBT1, MMP1, TNFSF9, ADGRG5, WNT5B, EFNA4, STAT5A, RB1
Negative: CSF1R, CLEC4A, TLR2, RPS4Y1, SMARCB1, IL12RB1, FYN, NOD2, NRG4, CXCL17
EPHB6, TWIST1, CCL3, GDF3, IL20, TNFAIP6, CTLA4, PTGS2, PLAC8, COL15A1
RAC2, IL15RA, CLOCK, PTGIS, AZU1, ACKR3, ANGPT2, NANOG, WNT5A, C1QC
PC_ 5
Positive: MZB1, CD27, MZT2A, XBP1, MALAT1, CD38, CCL5, FYN, IL2RG, FKBP11
IGHG2, DUSP5, CD3E, ST6GAL1, CD8A, CST7, IRF4, GAS6, RAC2, ITGAL
GZMA, NLRC5, CCR2, CCR5, JCHAIN, KLF2, HMGN2, NKG7, CD52, DUSP2
Negative: TAGLN, COL3A1, COL1A1, MGP, LUM, COL1A2, DCN, COL6A2, C1QC, TIMP1
CD81, C1QA, CALD1, MMP2, CXCL12, COL6A3, SELENOP, BGN, C1QB, CD163
PDGFRA, HGF, CD68, SLC40A1, SNAI2, IGFBP6, CYP1B1, MRC2, MS4A4A, NGFR
12:09:52 UMAP embedding parameters a = 0.9922 b = 1.112
12:09:52 Read 2263 rows and found 20 numeric columns
12:09:52 Using Annoy for neighbor search, n_neighbors = 30
12:09:52 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:09:52 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f367cad289
12:09:52 Searching Annoy index using 1 thread, search_k = 3000
12:09:53 Annoy recall = 100%
12:09:53 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:09:54 Initializing from normalized Laplacian + noise (using RSpectra)
12:09:54 Commencing optimization for 500 epochs, with 92020 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:09:57 Optimization finished
[1] 1.9
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGKC, IGHG2, IGHG1, MALAT1, XBP1, MZT2A, MZB1, TYK2, MGP, IFITM1
COL3A1, HSP90B1, JCHAIN, GPX1, CALD1, CD38, TAGLN, C1QA, CD81, IFI27
RPL34, C1QC, FKBP11, COL1A1, IGHA1, CD27, BST2, TIMP1, IRF4, HLA-DRB5
Negative: PSCA, IL17D, EFNA4, LIF, WNT7B, STAT5A, KRT13, IL17A, CD70, TNFRSF9
TNFRSF17, PTGES2, CCRL2, MTRNR2L1, CD53, APOB, WIF1, TWIST2, LEP, CUZD1
S100A4, TCL1A, RAD51, KRT20, SLC2A4, RARG, LGALS9, KRT86, CTSW, GDF3
PC_ 2
Positive: PTPRCAP, HLA-DRB5, HLA-DQB1, CD69, CXCR5, CXCR4, IL2RG, CD37, KRT15, PTPRC
LYZ, ITGB2, CD44, CD48, HLA-DPA1, ARHGDIB, IL2RB, TNFSF12, NLRC5, MRC1
TNFSF13B, JAK2, CD52, BTG1, MZT2A, GPR183, FES, IL10RA, RUNX3, CD3E
Negative: LIF, MPO, KRT13, PTGES2, CCRL2, TNFRSF17, IL17A, TNFRSF9, MTRNR2L1, EFNA4
IL17D, IGHG1, STAT5A, LAIR1, WNT7B, WIF1, IGHG2, CD70, PSCA, S100A4
SELENOP, IGKC, C1QB, CD53, LGALS9, APOB, MZB1, LPAR5, KRT86, XBP1
PC_ 3
Positive: MZB1, XBP1, LPAR5, IGHG2, RPS4Y1, TNFAIP6, TLR2, WNT5A, PLA2R1, CD38
IGKC, ATF3, IGHG1, COL3A1, SMARCB1, DNTT, JCHAIN, ADGRV1, AGR2, PROKR1
TAGLN, TSLP, IRF4, COL1A1, PTGS2, FKBP11, CSF2, BMP6, THBS2, GC
Negative: HLA-DPA1, HLA-DQA1, C1QB, C1QC, C1QA, HLA-DRB5, HLA-DQB1, ITGB2, CD53, S100A4
CCL5, LYZ, CD163, KRT13, LIF, STAT5A, PTGES2, FYB1, CD68, LGALS9
CCRL2, EFNA4, TNFRSF9, CD2, CD52, IL16, MTRNR2L1, CD37, TNFRSF17, NLRC5
PC_ 4
Positive: WNT7A, PTGDR2, KRT13, TSLP, VEGFC, WIF1, IGHG1, IGHG2, GZMH, TNFRSF17
FZD6, CD5L, CXCR5, WNT7B, TNFRSF9, ADGRA3, MMP1, IL12A, WNT9A, FGF12
FGG, IL17D, ADGRG5, XCL2, LIF, WNT5B, NRIP3, DMBT1, STAT5A, TNFSF9
Negative: CSF1R, CLEC4A, RPS4Y1, TLR2, SMARCB1, IL12RB1, NRG4, CXCL17, FYN, EPHB6
NOD2, TWIST1, GDF3, CCL3, IL20, TNFAIP6, PTGIS, CTLA4, IL15RA, RAC2
PTGS2, CLOCK, COL15A1, AZU1, PLAC8, ACKR3, NANOG, ANGPT2, LUM, WNT5A
PC_ 5
Positive: TAGLN, COL1A1, COL3A1, MGP, LUM, COL1A2, DCN, COL6A2, CD81, CALD1
TIMP1, C1QC, CXCL12, COL6A3, BGN, SELENOP, MMP2, C1QA, PDGFRA, C1QB
CD163, HGF, CD68, SLC40A1, SNAI2, IGFBP6, CYP1B1, MRC2, MS4A4A, PTGDS
Negative: MZB1, CD27, XBP1, CD38, MZT2A, MALAT1, CCL5, IL2RG, FKBP11, FYN
DUSP5, CST7, IGHG2, GZMA, CD3E, ST6GAL1, CD8A, JCHAIN, RAC2, IRF4
GAS6, NLRC5, CCR2, ITGAL, CCR5, ICOS, IGHA1, CD79A, NKG7, CD52
12:10:23 UMAP embedding parameters a = 0.9922 b = 1.112
12:10:23 Read 2040 rows and found 20 numeric columns
12:10:23 Using Annoy for neighbor search, n_neighbors = 30
12:10:23 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:10:23 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f329243be0
12:10:23 Searching Annoy index using 1 thread, search_k = 3000
12:10:23 Annoy recall = 100%
12:10:24 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:10:25 Initializing from normalized Laplacian + noise (using RSpectra)
12:10:25 Commencing optimization for 500 epochs, with 82602 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:10:27 Optimization finished
[1] 2
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGKC, IGHG2, IGHG1, MALAT1, MZT2A, XBP1, MZB1, TYK2, IFITM1, MGP
COL3A1, HSP90B1, CD38, GPX1, JCHAIN, CALD1, CD81, TAGLN, C1QA, IFI27
RPL34, FKBP11, COL1A1, C1QC, IGHA1, CD27, BST2, TIMP1, LPAR5, IRF4
Negative: PSCA, IL17D, EFNA4, WNT7B, LIF, STAT5A, KRT13, IL17A, CD70, TNFRSF9
TNFRSF17, PTGES2, CCRL2, MTRNR2L1, CD53, TWIST2, APOB, WIF1, SLC2A4, LEP
CUZD1, TCL1A, KRT20, RAD51, RARG, S100A4, LGALS9, CLEC4E, CTSW, KRT86
PC_ 2
Positive: MPO, LIF, PTGES2, KRT13, IL17A, CCRL2, TNFRSF17, IGHG1, TNFRSF9, IGHG2
IL17D, LAIR1, MTRNR2L1, EFNA4, WIF1, STAT5A, WNT7B, PSCA, IGKC, CD70
SELENOP, MZB1, S100A4, APOB, LPAR5, XBP1, KRT86, EPHB6, IL20, TLR2
Negative: HLA-DRB5, HLA-DQB1, PTPRCAP, LYZ, ITGB2, HLA-DPA1, CD37, KRT15, PTPRC, CXCR4
CD52, CD69, CXCR5, HLA-DQA1, NLRC5, IL2RG, CD44, FYB1, CD48, ARHGDIB
IL10RA, BTG1, CD68, IL16, ZFP36, MRC1, CD163, CCL5, MZT2A, CD3E
PC_ 3
Positive: MZB1, XBP1, PLA2R1, LPAR5, ATF3, AGR2, CD38, RPS4Y1, DNTT, TNFAIP6
ADGRV1, PROKR1, WNT5A, TLR2, COL3A1, VEGFC, TNFRSF13B, JCHAIN, TSLP, COL1A1
GAS6, IRF4, THBS2, CCL13, NRIP3, CAV1, FGF12, SERPINB5, TAGLN, SMARCB1
Negative: HLA-DPA1, C1QB, HLA-DQA1, C1QC, C1QA, CD53, S100A4, HLA-DRB5, HLA-DQB1, ITGB2
LIF, KRT13, PTGES2, STAT5A, CCL5, CCRL2, CD163, TNFRSF9, LYZ, EFNA4
MTRNR2L1, FYB1, CD68, LGALS9, TNFRSF17, IL17D, SELENOP, WNT7B, CD2, IL16
PC_ 4
Positive: KRT13, WNT7A, WIF1, TSLP, IGHG2, IGHG1, PTGDR2, TNFRSF9, TNFRSF17, GZMH
VEGFC, IL12A, FZD6, FGG, MMP1, IL17D, WNT7B, CXCR5, WNT9A, CD5L
LIF, ADGRG5, ADGRA3, MPO, MZB1, XCL2, STAT5A, TNFRSF13B, KRT16, TNFSF9
Negative: CSF1R, CLEC4A, RPS4Y1, TLR2, SMARCB1, NRG4, CXCL17, EPHB6, IL12RB1, FYN
NOD2, IL20, TWIST1, GDF3, CCL3, TNFAIP6, LUM, PTGIS, RAC2, COL15A1
CTLA4, IL15RA, PTGS2, ACKR3, AZU1, CLOCK, WNT5A, CD163, NANOG, ANGPT2
PC_ 5
Positive: MZB1, CD27, XBP1, FYN, CD38, MALAT1, CCL5, MZT2A, FKBP11, IL2RG
RAC2, GZMA, CST7, PLAC8, JCHAIN, DUSP5, CCR2, IRF4, CD8A, GAS6
ST6GAL1, IL6R, RPS4Y1, HSP90B1, NLRC5, ICOS, IGHA1, CD3E, CCR5, IGHG2
Negative: COL1A1, TAGLN, COL3A1, COL1A2, MGP, DCN, LUM, COL6A2, CXCL12, CALD1
COL6A3, SELENOP, CD81, BGN, TIMP1, MMP2, C1QA, C1QC, PDGFRA, HGF
C1QB, SNAI2, CD163, IGFBP6, SLC40A1, CYP1B1, CD68, MRC2, PTGDS, COL5A2
12:10:50 UMAP embedding parameters a = 0.9922 b = 1.112
12:10:50 Read 1731 rows and found 20 numeric columns
12:10:50 Using Annoy for neighbor search, n_neighbors = 30
12:10:50 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:10:50 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f357ac0238
12:10:50 Searching Annoy index using 1 thread, search_k = 3000
12:10:50 Annoy recall = 100%
12:10:51 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:10:52 Initializing from normalized Laplacian + noise (using RSpectra)
12:10:52 Commencing optimization for 500 epochs, with 69420 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:10:54 Optimization finished
[1] 2.1
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGKC, IGHG2, IGHG1, MZT2A, MALAT1, XBP1, MZB1, TYK2, MGP, IFITM1
COL3A1, HSP90B1, GPX1, CD38, CALD1, JCHAIN, C1QA, CD81, TAGLN, IFI27
RPL34, C1QC, FKBP11, COL1A1, IGHA1, CD27, BST2, TIMP1, LPAR5, IRF4
Negative: PSCA, IL17D, EFNA4, WNT7B, STAT5A, LIF, KRT13, IL17A, TNFRSF17, CD70
TNFRSF9, PTGES2, TWIST2, MTRNR2L1, SLC2A4, CCRL2, RAD51, TCL1A, LEP, CUZD1
CD53, APOB, RARG, KRT20, WIF1, CLEC4E, CTSW, LGALS9, KRT86, WNT9A
PC_ 2
Positive: HLA-DQB1, HLA-DRB5, ITGB2, LYZ, PTPRCAP, HLA-DPA1, PTPRC, HLA-DQA1, CD52, CD37
CXCR5, CD163, NLRC5, FYB1, KRT15, CD68, CD69, ARHGDIB, CXCR4, IL2RG
BTG1, IL10RA, CCL5, ZFP36, CD48, CD3E, C1QA, TGFB1, IL16, GPR183
Negative: MPO, IL17A, LIF, PTGES2, IGHG1, CCRL2, KRT13, TNFRSF17, IGHG2, MTRNR2L1
LAIR1, IL17D, TNFRSF9, EFNA4, IGKC, PSCA, WIF1, STAT5A, MZB1, WNT7B
CD70, LPAR5, XBP1, APOB, RPS4Y1, KRT86, EPHB6, SELENOP, IL20, TLR2
PC_ 3
Positive: MZB1, XBP1, PLA2R1, ATF3, AGR2, TNFRSF13B, DNTT, CD38, LPAR5, ADGRV1
COL1A1, VEGFC, COL3A1, PROKR1, CAV1, GAS6, NRIP3, ADORA2A, FGF12, IRF4
CCL13, TNFAIP6, RPS4Y1, CD27, PTGDR2, ST6GAL1, GC, WNT5A, TSLP, MGP
Negative: C1QB, HLA-DPA1, HLA-DQA1, C1QC, C1QA, LIF, PTGES2, S100A4, CD53, KRT13
HLA-DRB5, HLA-DQB1, ITGB2, STAT5A, CCRL2, EFNA4, MTRNR2L1, CD163, TNFRSF9, CCL5
TNFRSF17, LYZ, IL17D, FYB1, LGALS9, CD68, SELENOP, WNT7B, IL17A, CD2
PC_ 4
Positive: CSF1R, CLEC4A, RPS4Y1, CXCL17, SMARCB1, TLR2, NRG4, EPHB6, IL12RB1, FYN
NOD2, IL20, TWIST1, LUM, PTGIS, CCL3, GDF3, TNFAIP6, COL15A1, CTLA4
RAC2, CLOCK, TIMP1, PTGS2, IL15RA, CD81, AZU1, CD163, NANOG, PLAC8
Negative: KRT13, IGHG1, IGHG2, WNT7A, WIF1, TNFRSF17, TSLP, TNFRSF9, PTGDR2, LIF
WNT7B, MPO, FZD6, GZMH, MZB1, MMP1, VEGFC, ADGRA3, IL12A, FGG
CD5L, IL17D, XBP1, CCRL2, IL17A, CXCR5, GAS6, WNT9A, ADGRG5, TNFRSF13B
PC_ 5
Positive: COL1A1, COL3A1, COL1A2, TAGLN, MGP, LUM, COL6A2, DCN, CALD1, SELENOP
COL6A3, CXCL12, BGN, CD81, MMP2, TIMP1, PDGFRA, HGF, C1QB, C1QC
C1QA, SLC40A1, SNAI2, CYP1B1, IGFBP6, PTGDS, MRC2, CFD, COL14A1, CD163
Negative: CD27, MZB1, FYN, XBP1, CD38, CCL5, RAC2, IL2RG, GZMA, PLAC8
RGS1, CST7, RPS4Y1, FKBP11, CXCL17, MALAT1, NLRC5, MZT2A, GAS6, NOD2
ST6GAL1, CLOCK, DUSP5, ITGAL, CLEC4A, IGHG2, SEC61G, CCR2, FFAR4, PRSS2
12:11:12 UMAP embedding parameters a = 0.9922 b = 1.112
12:11:12 Read 1407 rows and found 20 numeric columns
12:11:12 Using Annoy for neighbor search, n_neighbors = 30
12:11:12 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:12 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f31b1326f
12:11:12 Searching Annoy index using 1 thread, search_k = 3000
12:11:13 Annoy recall = 100%
12:11:13 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:11:14 Initializing from normalized Laplacian + noise (using RSpectra)
12:11:14 Commencing optimization for 500 epochs, with 55806 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:16 Optimization finished
[1] 2.2
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGHG2, IGKC, IGHG1, MZT2A, MALAT1, XBP1, MZB1, TYK2, IFITM1, MGP
COL3A1, HSP90B1, GPX1, CALD1, CD38, C1QA, IFI27, JCHAIN, CD81, RPL34
C1QC, TAGLN, FKBP11, COL1A1, IGHA1, BST2, CD27, HLA-DRB5, TIMP1, LPAR5
Negative: PSCA, IL17D, EFNA4, STAT5A, WNT7B, LIF, TNFRSF17, IL17A, CD70, KRT13
TNFRSF9, TWIST2, SLC2A4, PTGES2, TCL1A, RARG, RAD51, MTRNR2L1, KRT20, WIF1
LEP, CTSW, LEFTY2, CLEC4E, CD53, APOB, CCRL2, CUZD1, WNT9A, SCGB3A1
PC_ 2
Positive: HLA-DRB5, HLA-DQB1, ITGB2, LYZ, HLA-DQA1, HLA-DPA1, PTPRCAP, PTPRC, CD68, CXCR5
KRT15, CD163, IL10RA, CD52, JAK2, C1QA, FYB1, CD37, CCL5, TNFSF13B
MRC1, CD69, ZFP36, IL2RG, ARHGDIB, TNFSF12, BTG1, GZMH, GPR183, NLRC5
Negative: MPO, IL17A, PTGES2, LIF, CCRL2, IGHG1, LAIR1, IGHG2, MTRNR2L1, TNFRSF17
KRT13, EFNA4, IGKC, IL17D, LPAR5, RPS4Y1, TNFRSF9, PSCA, AZU1, PTGS2
EPHB6, WIF1, MZB1, APOB, WNT7B, CD70, TLR2, NRG4, IL20, PTGIS
PC_ 3
Positive: MZB1, XBP1, PLA2R1, TNFRSF13B, DNTT, ATF3, LPAR5, VEGFC, AGR2, CD38
PTGDR2, FGF12, IRF4, PROKR1, CAV1, ADORA2A, COL3A1, ARTN, CXCR5, GAS6
CCL13, GC, SAA1, ADGRV1, SEC61G, CD27, COL1A1, WNT5A, NRIP3, BGN
Negative: C1QB, HLA-DPA1, HLA-DQA1, C1QC, C1QA, PTGES2, S100A4, LIF, CD53, HLA-DQB1
HLA-DRB5, EFNA4, KRT13, CCRL2, CD163, STAT5A, ITGB2, MTRNR2L1, TNFRSF9, SELENOP
TNFRSF17, LGALS9, CCL5, IL17D, LYZ, CD68, FYB1, WNT7B, CD2, WIF1
PC_ 4
Positive: KRT13, WIF1, TNFRSF17, TNFRSF9, IGHG2, IGHG1, WNT7B, TSLP, MPO, LIF
WNT7A, EFNA4, CCRL2, IL17D, PTGES2, FZD6, MZB1, IL17A, PTGDR2, ADGRA3
ADGRG5, FGG, MTRNR2L1, STAT5A, GZMH, WNT9A, LAIR1, ST6GAL1, CD5L, IL12A
Negative: CSF1R, CLEC4A, CXCL17, RPS4Y1, SMARCB1, TLR2, IL12RB1, FYN, EPHB6, IL20
NRG4, NOD2, TWIST1, CCL3, TNFAIP6, LUM, COL15A1, PTGIS, IL15RA, GDF3
CD163, CLOCK, RAC2, CD81, PTGS2, NANOG, CTLA4, PLAC8, ACKR3, AZU1
PC_ 5
Positive: COL1A1, COL3A1, COL1A2, MGP, DCN, TAGLN, COL6A2, LUM, CALD1, COL6A3
BGN, SELENOP, MMP2, CXCL12, TIMP1, HGF, PDGFRA, CD81, C1QB, C1QC
C1QA, CYP1B1, SNAI2, SLC40A1, IGFBP6, MRC2, THBS2, NGFR, BMP5, COL14A1
Negative: CD27, FYN, MZB1, XBP1, CCL5, SEC61G, CD38, RAC2, CST7, GAS6
GZMA, CD8A, CLOCK, PLAC8, ST6GAL1, NKG7, JCHAIN, PRSS2, MZT2A, FKBP11
RPS4Y1, ITGAL, ICOS, DUSP2, DUSP5, IL2RG, IGHA1, HSP90B1, TNFSF14, NOD2
12:11:31 UMAP embedding parameters a = 0.9922 b = 1.112
12:11:31 Read 1038 rows and found 20 numeric columns
12:11:31 Using Annoy for neighbor search, n_neighbors = 30
12:11:31 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:31 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f353212c37
12:11:31 Searching Annoy index using 1 thread, search_k = 3000
12:11:31 Annoy recall = 100%
12:11:32 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:11:33 Initializing from normalized Laplacian + noise (using RSpectra)
12:11:33 Commencing optimization for 500 epochs, with 40156 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:34 Optimization finished
[1] 2.3
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%
|
|========================================================================================================== | 93%
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGKC, IGHG2, IGHG1, MZT2A, MALAT1, XBP1, MZB1, TYK2, IFITM1, MGP
COL3A1, GPX1, CALD1, HSP90B1, RPL34, C1QA, CD38, CD81, FKBP11, IFI27
JCHAIN, C1QC, COL1A1, TAGLN, IGHA1, BST2, CD27, LPAR5, TIMP1, HLA-DRB5
Negative: PSCA, IL17D, EFNA4, WNT7B, STAT5A, IL17A, CD70, TNFRSF17, KRT13, LIF
SCGB3A1, TCL1A, TWIST2, RAD51, TNFRSF9, KRT20, RARG, SLC2A4, MTRNR2L1, PTGES2
LEP, CCRL2, IFNA1, CTSW, WNT9A, TNFSF15, WIF1, CLEC4E, CD53, PROKR1
PC_ 2
Positive: HLA-DRB5, LYZ, ITGB2, HLA-DQB1, HLA-DQA1, PTPRCAP, CD52, HLA-DPA1, CXCR5, JAK2
KRT15, PTPRC, IL10RA, GPR183, TNFSF13B, CD68, CD163, CD69, C1QA, NLRC5
TNFSF12, GZMH, IL2RG, OAS3, FGG, NKG7, CD48, MRC1, IL2RB, CD37
Negative: MPO, LAIR1, PTGES2, IL17A, CCRL2, LIF, MTRNR2L1, KRT13, IL20, TNFRSF17
AZU1, IGHG1, EFNA4, RPS4Y1, APOB, IL12RB1, PTGS2, EPHB6, IGHG2, TLR2
CD70, LPAR5, NRG4, PSCA, IGKC, WIF1, IL17D, PTGIS, TNFRSF9, ELANE
PC_ 3
Positive: MZB1, XBP1, PLA2R1, TNFRSF13B, AGR2, GAS6, PTGDR2, VEGFC, LPAR5, ATF3
DNTT, ARTN, TSLP, CD38, FKBP11, ADORA2A, CAV1, COL3A1, FGF12, UCP1
COL1A1, CCL13, WNT7A, ST6GAL1, IRF4, TAGLN, ESR1, CSF2RB, ACTG2, LCN2
Negative: C1QB, HLA-DPA1, C1QC, HLA-DQA1, C1QA, ITGB2, HLA-DQB1, HLA-DRB5, CD163, CD53
S100A4, LIF, PTGES2, CCL5, EFNA4, LYZ, CD68, CCRL2, STAT5A, LGALS9
FYB1, MTRNR2L1, KRT13, SELENOP, CD2, GPX1, TNFRSF9, IL17D, PTGDS, SRGN
PC_ 4
Positive: KRT13, WIF1, TNFRSF9, EFNA4, LIF, TNFRSF17, IGHG2, PTGES2, IGHG1, IL17D
WNT7B, CCRL2, IL17A, S100A4, MTRNR2L1, ADGRG5, MPO, TSLP, WNT7A, CD70
STAT5A, FGG, FZD6, CXCR6, TCL1A, MMP1, IL12A, TWIST2, LAIR1, GZMH
Negative: CSF1R, CLEC4A, CXCL17, FYN, TLR2, RPS4Y1, SMARCB1, TWIST1, NRG4, IL20
NOD2, EPHB6, IL12RB1, CTLA4, IL15RA, CCL3, RAC2, NANOG, CLOCK, TNFAIP6
LUM, PTGS2, COL15A1, LY6D, RGS1, ALCAM, PLAC8, GDF3, AZU1, CD44
PC_ 5
Positive: CD27, MZB1, CCL5, CD38, XBP1, ST6GAL1, GAS6, CD79A, DUSP5, CST7
TNFSF14, FYN, RAC2, IL2RG, GZMA, ICOS, JCHAIN, IGHG2, SEC61G, AZU1
PRSS2, FKBP11, IL6R, CD8A, CSF2RB, CFLAR, PTPRCAP, CCR5, CD48, CLOCK
Negative: COL3A1, COL1A1, COL1A2, COL6A2, MGP, TAGLN, DCN, LUM, CALD1, BGN
COL6A3, CXCL12, TIMP1, CD81, MMP2, SELENOP, PDGFRA, HGF, C1QC, C1QA
SNAI2, C1QB, SLC40A1, CYP1B1, TLR4, HDAC4, COL14A1, CD163, RSPO2, PTGDS
12:11:45 UMAP embedding parameters a = 0.9922 b = 1.112
12:11:45 Read 704 rows and found 20 numeric columns
12:11:45 Using Annoy for neighbor search, n_neighbors = 30
12:11:45 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:45 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f36b925262
12:11:45 Searching Annoy index using 1 thread, search_k = 3000
12:11:45 Annoy recall = 100%
12:11:46 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:11:47 Initializing from normalized Laplacian + noise (using RSpectra)
12:11:47 Commencing optimization for 500 epochs, with 26686 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:48 Optimization finished
[1] 2.4
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%
|
|======== | 7%
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|============== | 12%
|
|============== | 13%
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in sqrt(1/i) : NaNs produced
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in sqrt(1/i) : NaNs produced
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%
|
|========================================================================== | 65%
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|========================================================================================================== | 93%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGKC, IGHG1, IGHG2, MZT2A, MALAT1, XBP1, MZB1, TYK2, MGP, IFITM1
CALD1, RPL34, HSP90B1, GPX1, COL3A1, FKBP11, C1QA, CD81, CD38, COL1A1
C1QC, JCHAIN, TAGLN, LPAR5, IFI27, IGHA1, BST2, CD27, HLA-DRB5, TIMP1
Negative: PSCA, CD70, IL17D, EFNA4, SCGB3A1, STAT5A, CLEC4E, TCL1A, SLC2A4, RARG
RAD51, TNFRSF17, WNT7B, IL17A, KRT20, CIDEA, KRT13, DDR2, LEP, TNFSF15
LIF, ADGRA3, WNT9A, TWIST2, PROKR1, HDAC3, QRFPR, STAT4, CLEC4A, ATG5
PC_ 2
Positive: HLA-DQA1, LYZ, ITGB2, KRT15, HLA-DRB5, WNT7A, JAK2, PTPRCAP, HLA-DQB1, CXCR5
PTPRC, CD69, C1QA, GZMH, NKG7, GZMK, OAS3, CASP8, HLA-DPA1, IL2RG
IL10RA, TNFRSF18, FGG, CST7, TGFB1, OASL, IL2RB, CD163, VHL, OAS1
Negative: RPS4Y1, MPO, AZU1, CLEC4A, IL20, EPHB6, SMARCB1, LAIR1, PTGIS, TLR2
NRG4, CXCL17, CCRL2, PTGS2, ADGRF4, IL12RB1, PTGES2, CSF1R, NOD2, SOSTDC1
APOB, NANOG, KRT86, CTLA4, IL17D, CLOCK, LPAR5, ANGPT2, COL5A1, WNT5A
PC_ 3
Positive: HLA-DPA1, C1QB, HLA-DQA1, HLA-DQB1, C1QC, ITGB2, LIF, C1QA, HLA-DRB5, CD163
LYZ, CCL5, S100A4, CD53, CCRL2, LGALS9, EFNA4, STAT5A, CD68, FYB1
PTGES2, CD3E, TNFRSF9, GPX1, CD2, FYN, IL17D, MTRNR2L1, SRGN, CSF1R
Negative: MZB1, XBP1, COL3A1, TNFRSF13B, TSLP, FGF12, WNT7A, PTGDR2, BGN, PLA2R1
ATF3, COL1A1, TAGLN, ARTN, RSPO2, VEGFC, CALD1, MGP, EFNB3, GAS6
DNTT, TNFSF9, CCL28, FKBP11, SAA1, IRF4, ATM, TNFSF13B, LPAR5, DMBT1
PC_ 4
Positive: IGHG2, IGHG1, DUSP5, WIF1, GZMA, CCL5, GZMK, PTPRCAP, CD8A, TNFRSF17
MPO, CCRL2, CXCR6, CCR5, CD79A, CD47, CD48, TNFSF14, COL9A2, ST6GAL1
IL17A, ITGAL, XBP1, ATG12, TCL1A, MTRNR2L1, CD3E, IL2RG, NKG7, KRT13
Negative: COL3A1, MGP, TAGLN, COL1A1, LUM, COL1A2, CALD1, CD81, C1QC, TIMP1
COL6A2, CD163, C1QA, PDGFRA, TLR4, HGF, BGN, MMP2, IFI27, DCN
CSF1R, C1QB, CD68, SRGN, CLEC7A, IFNGR1, MS4A4A, IFITM1, GPX1, CMKLR1
PC_ 5
Positive: TLR2, CSF1R, CXCL17, NOD2, FYN, PLAC8, CCL3, CLEC4A, CUZD1, IL12RB1
PRSS2, CLOCK, RAC2, IL15RA, CST7, PTGS2, IGHM, CXCR4, IL3RA, KRT1
TAP1, GDF3, IL20, AZU1, RGS1, IL6, TWIST1, RPS4Y1, TNFAIP6, ATM
Negative: SELENOP, DCN, KRT13, EFNA4, PTGES2, COL6A2, CCRL2, TNFRSF9, S100A4, COL1A2
MGP, WIF1, COL1A1, WNT7A, COL6A3, COL3A1, SNAI2, LIF, CXCL12, TCL1A
TAGLN, IL17D, TWIST2, MTRNR2L1, FGG, C1QB, BGN, CIDEA, CD70, WNT7B
12:11:56 UMAP embedding parameters a = 0.9922 b = 1.112
12:11:56 Read 420 rows and found 20 numeric columns
12:11:56 Using Annoy for neighbor search, n_neighbors = 30
12:11:56 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:56 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f35753f9b6
12:11:56 Searching Annoy index using 1 thread, search_k = 3000
12:11:56 Annoy recall = 100%
12:11:57 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:11:58 Initializing from normalized Laplacian + noise (using RSpectra)
12:11:58 Commencing optimization for 500 epochs, with 15338 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:11:59 Optimization finished
[1] 2.5
Regressing out log10totalcounts
|
| | 0%
|
|= | 1%
|
|== | 1%
|
|== | 2%
|
|=== | 2%
|
|=== | 3%
|
|==== | 3%
|
|==== | 4%
|
|===== | 4%
|
|===== | 5%
|
|====== | 5%
|
|====== | 6%
|
|======= | 6%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|======== | 7%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|========= | 8%
|
|========== | 8%
|
|========== | 9%
|
|=========== | 9%
|
|=========== | 10%
|
|============ | 10%
|
|============ | 11%
|
|============= | 11%
|
|============= | 12%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|============== | 12%
|
|============== | 13%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=============== | 13%
|
|=============== | 14%
|
|================ | 14%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|================= | 15%
|
|================== | 15%
|
|================== | 16%
|
|=================== | 16%
|
|=================== | 17%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|==================== | 17%
|
|==================== | 18%
|
|===================== | 18%
|
|===================== | 19%
|
|====================== | 19%
|
|====================== | 20%
|
|======================= | 20%
|
|======================= | 21%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|======================== | 21%
|
|========================= | 22%
|
|========================== | 23%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=========================== | 23%
|
|=========================== | 24%
|
|============================ | 24%
|
|============================ | 25%
|
|============================= | 25%
|
|============================= | 26%
|
|============================== | 26%
|
|============================== | 27%
|
|=============================== | 27%
|
|=============================== | 28%
|
|================================ | 28%
|
|================================= | 29%
|
|================================== | 30%
|
|=================================== | 30%
|
|=================================== | 31%
|
|==================================== | 31%
|
|==================================== | 32%
|
|===================================== | 32%
|
|===================================== | 33%
|
|====================================== | 33%
|
|====================================== | 34%
|
|======================================= | 34%
|
|======================================= | 35%
|
|======================================== | 35%
|
|========================================= | 36%
|
|========================================== | 37%
|
|=========================================== | 37%
|
|=========================================== | 38%
|
|============================================ | 38%
|
|============================================ | 39%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|============================================= | 39%
|
|============================================= | 40%
|
|============================================== | 40%
|
|============================================== | 41%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=============================================== | 41%
|
|=============================================== | 42%
|
|================================================ | 42%
|
|================================================ | 43%
|
|================================================= | 43%
|
|================================================== | 44%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=================================================== | 44%
|
|=================================================== | 45%
|
|==================================================== | 45%
|
|==================================================== | 46%
|
|===================================================== | 46%
|
|===================================================== | 47%
|
|====================================================== | 47%
|
|====================================================== | 48%
|
|======================================================= | 48%
|
|======================================================= | 49%
|
|======================================================== | 49%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|======================================================== | 50%
|
|========================================================= | 50%
|
|========================================================== | 50%
|
|========================================================== | 51%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in sqrt(1/i) : NaNs produced
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in sqrt(1/i) : NaNs produced
|
|=========================================================== | 51%
|
|=========================================================== | 52%
|
|============================================================ | 52%
|
|============================================================ | 53%
|
|============================================================= | 53%
|
|============================================================= | 54%
|
|============================================================== | 54%
|
|============================================================== | 55%
|
|=============================================================== | 55%
|
|=============================================================== | 56%
|
|================================================================ | 56%
|
|================================================================= | 57%
|
|================================================================== | 57%
|
|================================================================== | 58%
|
|=================================================================== | 58%
|
|=================================================================== | 59%
|
|==================================================================== | 59%
|
|==================================================================== | 60%
|
|===================================================================== | 60%
|
|===================================================================== | 61%
|
|====================================================================== | 61%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in glm.nb(formula = fmla, data = regression.mat) :
alternation limit reached
|
|====================================================================== | 62%
|
|======================================================================= | 62%
|
|======================================================================= | 63%
|
|======================================================================== | 63%
|
|========================================================================= | 64%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|========================================================================== | 65%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=========================================================================== | 65%
|
|=========================================================================== | 66%
|
|============================================================================ | 66%
|
|============================================================================ | 67%
|
|============================================================================= | 67%
|
|============================================================================= | 68%
|
|============================================================================== | 68%
|
|============================================================================== | 69%
|
|=============================================================================== | 69%
|
|=============================================================================== | 70%
|
|================================================================================ | 70%
|
|================================================================================= | 71%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|================================================================================== | 72%
|
|=================================================================================== | 72%
|
|=================================================================================== | 73%
|
|==================================================================================== | 73%
|
|==================================================================================== | 74%
|
|===================================================================================== | 74%
|
|===================================================================================== | 75%
|
|====================================================================================== | 75%
|
|====================================================================================== | 76%
|
|======================================================================================= | 76%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|======================================================================================= | 77%
|
|======================================================================================== | 77%
|
|========================================================================================= | 78%
|
|========================================================================================== | 79%
|
|=========================================================================================== | 79%
|
|=========================================================================================== | 80%
|
|============================================================================================ | 80%
|
|============================================================================================ | 81%
|
|============================================================================================= | 81%
|
|============================================================================================= | 82%
|
|============================================================================================== | 82%
|
|============================================================================================== | 83%
|
|=============================================================================================== | 83%
|
|=============================================================================================== | 84%
|
|================================================================================================ | 84%
|
|================================================================================================ | 85%
|
|================================================================================================= | 85%
|
|================================================================================================== | 86%
|
|=================================================================================================== | 86%
|
|=================================================================================================== | 87%
|
|==================================================================================================== | 87%
|
|==================================================================================================== | 88%
|
|===================================================================================================== | 88%
|
|===================================================================================================== | 89%
|
|====================================================================================================== | 89%
|
|====================================================================================================== | 90%
|
|======================================================================================================= | 90%
|
|======================================================================================================= | 91%
|
|======================================================================================================== | 91%
|
|======================================================================================================== | 92%
|
|========================================================================================================= | 92%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|========================================================================================================== | 93%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|=========================================================================================================== | 94%
|
|============================================================================================================ | 94%
|
|============================================================================================================ | 95%
|
|============================================================================================================= | 95%
|
|============================================================================================================= | 96%Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
Warning in theta.ml(Y, mu, sum(w), w, limit = control$maxit, trace = control$trace > :
iteration limit reached
|
|============================================================================================================== | 96%
|
|============================================================================================================== | 97%
|
|=============================================================================================================== | 97%
|
|=============================================================================================================== | 98%
|
|================================================================================================================ | 98%
|
|================================================================================================================ | 99%
|
|================================================================================================================= | 99%
|
|==================================================================================================================| 100%
Centering and scaling data matrix
|
| | 0%
|
|==================================================================================================================| 100%
PC_ 1
Positive: IGKC, IGHG2, IGHG1, MZT2A, MALAT1, XBP1, MZB1, TYK2, IFITM1, GPX1
HSP90B1, FKBP11, COL3A1, CALD1, MGP, RPL34, C1QA, CD81, C1QC, COL1A1
TAGLN, CD38, LPAR5, JCHAIN, IFI27, IGHA1, HLA-DRB5, HLA-DPA1, TIMP1, ITGB2
Negative: PSCA, CD70, EFNA4, IL17D, RAD51, DDR2, SCGB3A1, TCL1A, TNFRSF17, HDAC3
STAT5A, CIDEA, CLEC4E, CSF3R, KRT20, SLC2A4, FGG, QRFPR, IL12A, CLEC4A
LEP, WNT7B, TWIST2, RARG, CUZD1, NRG4, IL17A, KRT13, STAT4, LIF
PC_ 2
Positive: PTGIS, RPS4Y1, PTGES2, EPHB6, IL20, NRG4, AZU1, MPO, CXCL17, CCRL2
TLR2, EFNA4, ST6GALNAC3, ADGRF4, IL12RB1, IL17D, NOD2, SMARCB1, G6PC2, LAIR1
ANGPT2, IL33, KRT86, DNMT1, CLEC4A, RPL32, COL5A1, CSF1R, LAMP3, CD79A
Negative: WNT7A, KRT15, JAK2, TNFSF9, FGG, CXCR5, CD80, NLRP3, ZFP36, CD5L
TNFSF13B, VEGFC, MMP1, ADGRG3, ATF3, GZMH, NPPC, PTGDR2, TNFRSF13B, OAS1
VHL, FGF12, TNFSF18, TLR7, PTPRCAP, MRC1, CASP8, FOXP3, RELT, CHGA
PC_ 3
Positive: MZB1, TSLP, TAGLN, XBP1, PLA2R1, IGHG2, ATF3, COL3A1, IGKC, AGR2
WNT7A, COL1A1, MPO, LPAR5, RSPO2, TNFRSF13B, IGHG1, COL6A3, LUM, DMBT1
ARTN, FGG, ADGRL1, EFNB3, DCN, ESR1, SLPI, ADGRB2, UCP1, CALD1
Negative: HLA-DPA1, ITGB2, HLA-DQB1, CD2, HLA-DQA1, HLA-DRB5, CCL5, FYB1, CD163, CD3E
LYZ, C1QC, CLEC2D, CCL19, CD68, CSK, IL16, CD44, MZT2A, CST7
NLRC5, KLRK1, FYN, C1QA, PTPRCAP, TYK2, GZMK, CXCR4, BTG1, C1QB
PC_ 4
Positive: CXCR6, WIF1, KRT13, EFNA4, CCRL2, S100A4, TNFRSF9, LIF, SELENOP, MTRNR2L1
STAT5A, IL17D, PTGES2, TWIST2, TNFRSF17, FGF7, TCL1A, PSCA, C1QB, WNT7B
IL12A, LGALS9, CD70, CLEC4D, IL17A, TGFB1, RARG, CLEC12A, CPA3, SNAI2
Negative: CSF1R, TWIST1, TLR2, NOD2, APOA1, KRT4, CLEC4A, IFI27, KRT20, CXCL17
ITGAM, SELL, PLAC8, IL15RA, CUZD1, CSK, G6PC2, RAC2, ATM, GPBAR1
TNFAIP6, CSF2RA, IFITM1, MERTK, FFAR3, ACKR1, FCRLA, TNFSF15, RGS2, GC
PC_ 5
Positive: COL3A1, MGP, COL1A1, COL1A2, COL6A2, LUM, TAGLN, CALD1, C1QC, DCN
BGN, TIMP1, C1QA, MMP2, SELENOP, COL6A3, C1QB, CD163, MMP19, HGF
PDGFRA, SRGN, CLEC7A, CD81, TLR4, NLRP3, CXCL12, CD68, DHRS2, CMKLR1
Negative: IL2RG, IGHG2, IGHG1, DUSP5, ST6GAL1, ADGRV1, PTPRCAP, FYN, CD38, GDF3
PDCD1, AZU1, NLRC5, CD52, CLOCK, TLR2, GZMK, ATG12, ANGPT2, UBE2C
RAC2, GDNF, NOD2, CD28, CHEK2, UCP1, TOX, ITGAL, CD48, GAS6
12:12:04 UMAP embedding parameters a = 0.9922 b = 1.112
12:12:04 Read 218 rows and found 20 numeric columns
12:12:04 Using Annoy for neighbor search, n_neighbors = 30
12:12:04 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:12:04 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f37a40314e
12:12:04 Searching Annoy index using 1 thread, search_k = 3000
12:12:04 Annoy recall = 100%
12:12:05 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:12:06 Initializing from normalized Laplacian + noise (using RSpectra)
12:12:06 Commencing optimization for 500 epochs, with 7832 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:12:06 Optimization finished
[[1]]
[[2]]
[[3]]
[[4]]
[[5]]
[[6]]
[[7]]
[[8]]
[[9]]
[[10]]
[[11]]
cells with > 80 RNA counts seem to do best
#filter by ncounts
bcell_seurat_fil <- subset(bcell_seurat, subset = log10totalcounts > 1.9)
#run UMAP
bcell_seurat_fil <- RunPCA(bcell_seurat_fil, features = bcell_all.genes, npcs=20)
PC_ 1
Positive: MARCO, CCL7, CLEC4D, MMP3, RSPO2, IL36G, FOXP3, GDNF, MMP1, GPER1
LY75, IFNL3, IFNG, ACKR1, CAMP, NLRC4, PGF, IAPP, CYP19A1, INHBB
EFNB3, VPREB3, IGHA1, ADGRV1, ADGRB3, KRT5, CD8B, COL5A2, KRT6B, CHGA
Negative: CD53, S100A4, STAT5A, IL17D, PTGES2, TNFRSF17, LIF, IL16, SELENOP, LAIR1
LGALS9, MPO, WNT7B, CD70, BTG1, RPL32, WIF1, IL15RA, TNFRSF9, PSCA
MKI67, TYROBP, CD28, CCRL2, EFNA4, MTRNR2L1, CYTOR, RAC2, ARHGDIB, IL17A
PC_ 2
Positive: PSCA, KRT13, LIF, IL17D, IL17A, WNT7B, EFNA4, TNFRSF9, CCRL2, TNFRSF17
STAT5A, PTGES2, CD70, MTRNR2L1, APOB, WIF1, LEP, TWIST2, KRT86, KRT20
CUZD1, ADGRF4, RAD51, GDF3, MPO, IL20, OLR1, LEFTY2, SLC2A4, ELANE
Negative: XBP1, COL3A1, IFI27, MZB1, GPX1, MGP, IFITM1, C1QA, CD81, C1QC
CALD1, CD38, RPL34, TAGLN, JCHAIN, CD163, BST2, HLA-DRB5, MALAT1, CD27
HSP90B1, COL1A1, IGKC, ITGB2, FKBP11, CXCR4, SRGN, TIMP1, TYK2, HMGB2
PC_ 3
Positive: SERPINB5, PROKR1, ATF3, DNTT, VEGFC, TNFRSF13B, CXCR5, NLRP2, NRIP3, ACTG2
FGG, CCL13, MMP3, TNFSF13B, WNT5B, BMP6, CCL28, GC, AATK, ADORA2A
EFNB3, FGF12, GDNF, AGR2, DMBT1, ADGRV1, TCL1A, LINC02446, COL9A3, SLC2A4
Negative: LIF, KRT13, PTGES2, CCRL2, S100A4, C1QB, STAT5A, TNFRSF17, TNFRSF9, MTRNR2L1
CD53, EFNA4, IL17A, IL17D, MPO, WNT7B, LGALS9, HLA-DQA1, SELENOP, WIF1
CD70, C1QA, HLA-DPA1, C1QC, LAIR1, PSCA, ITGB2, CD163, CCL5, HLA-DRB5
PC_ 4
Positive: CCL5, GZMK, PTPRCAP, HLA-DQA1, FYB1, NKG7, CD52, HLA-DPA1, HLA-DQB1, LYZ
CD84, CD2, CD3E, ITGB2, NLRC5, CD69, CST7, PRF1, GZMH, PDCD1
PTPRC, CD37, KLRK1, GZMB, OASL, IL16, CD44, IL2RG, LAG3, IL2RB
Negative: MZB1, XBP1, COL3A1, TLR2, LPAR5, IGKC, RPS4Y1, MGP, PTGS2, TAGLN
COL1A1, JCHAIN, IGHG2, CD38, COL5A1, IGHG1, LUM, SMARCB1, TNFAIP6, CLEC4A
HSP90B1, EPHB6, BGN, WNT5A, CALD1, HGF, COL1A2, NRG4, CXCL17, MPO
PC_ 5
Positive: KRT13, TSLP, TNFRSF17, PTGDR2, MPO, WIF1, WNT7B, LIF, VEGFC, WNT7A
IL17D, XBP1, TNFRSF9, COL1A1, STAT5A, COL3A1, MZB1, MMP1, SNAI2, EFNA4
ADGRA3, FZD6, TAGLN, NRIP3, COL1A2, IL17A, DMBT1, CD5L, IGHG2, LAIR1
Negative: CLEC4A, FYN, IL12RB1, CSF1R, RPS4Y1, NRG4, SMARCB1, CXCL17, EPHB6, GDF3
NOD2, TWIST1, IL20, CCL5, CCL3, ACKR3, TLR2, TNFAIP6, PLAC8, CTLA4
PTGIS, CLOCK, CD2, RAC2, RGS1, AZU1, COL15A1, CXCR4, IL7R, FYB1
bcell_seurat_fil <- RunUMAP(bcell_seurat_fil, dims = 1:20)
12:12:08 UMAP embedding parameters a = 0.9922 b = 1.112
12:12:08 Read 2040 rows and found 20 numeric columns
12:12:08 Using Annoy for neighbor search, n_neighbors = 30
12:12:08 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:12:09 Writing NN index file to temp file /tmp/RtmpbjSzLh/file4d5f36da3b31d
12:12:09 Searching Annoy index using 1 thread, search_k = 3000
12:12:09 Annoy recall = 100%
12:12:10 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 30
12:12:11 Initializing from normalized Laplacian + noise (using RSpectra)
12:12:11 Commencing optimization for 500 epochs, with 85384 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
12:12:13 Optimization finished
Idents(object = bcell_seurat_fil) <- bcell_seurat_fil@meta.data$'bcell_subclust'
# remove old UMAP cols from metadata
bcell_seurat_fil@meta.data <- bcell_seurat_fil@meta.data[,which(!(colnames(bcell_seurat_fil@meta.data) %in% c('UMAP_1', 'UMAP_2')))]
# Add new UMAP cols
bcell_seurat_fil <- AddMetaData(bcell_seurat_fil,
data.frame(bcell_seurat_fil@reductions$umap@cell.embeddings))
# Make sure it's not too batchy
ggplot(bcell_seurat_fil@meta.data,
aes(x=UMAP_1,
y=UMAP_2,
color=tissuename)) +
geom_point(size=1) +
facet_wrap(~tissuename) +
theme(axis.title.y = element_blank(),
axis.title.x = element_blank())
# Plot
ggplot(bcell_seurat_fil@meta.data,
aes(x=UMAP_1,
y=UMAP_2,
color=bcell_subclust)) +
geom_point(size=1) +
scale_color_manual(values = bcellcols,
guide = guide_legend(title = "B-cell\nsubcluster",
keyheight = 0.5,
keywidth = 0.5)) +
theme(axis.title.y = element_blank(),
axis.title.x = element_blank())
ggsave(file = 'figures/bcellsubclust_UMAP.svg',
width = 4,
height = 3,
device = svg)
# Plot plasmablast and B-cell identity
ggplot(bcell_seurat_fil@meta.data,
aes(x=UMAP_1,
y=UMAP_2,
color=clust)) +
geom_point(size=1) +
scale_color_manual(values = bcellcols,
guide = guide_legend(title = "Patrick\ncell types",
keyheight = 0.5,
keywidth = 0.5)) +
theme(axis.title.y = element_blank(),
axis.title.x = element_blank())
ggsave(file = 'figures/bcellPlasma_UMAP.svg',
width = 4,
height = 3,
device = svg)
NA
NA
## define continuous variables
contvars <- list("totalcounts", "Area", "Mean.PanCK", "Max.PanCK", "Mean.CD45", "Max.CD45", "Mean.DAPI", "Max.DAPI")
## B-cells
# MLE-cell vs continuous variables
plts <- lapply(contvars, function(d) {
ggplot(bcell_seurat@meta.data,
aes_string(x = "bcell_subclust",
y = d)) + geom_violin() +
geom_jitter(size = 0.5, alpha = 0.1) +
scale_y_continuous(trans='log10')
})
Warning: `aes_string()` was deprecated in ggplot2 3.0.0.
ℹ Please use tidy evaluation idioms with `aes()`.
ℹ See also `vignette("ggplot2-in-packages")` for more information.
This warning is displayed once every 8 hours.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
plts <- ggarrange(plotlist=plts, labels = contvars, common.legend = F)
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning: Removed 17 rows containing non-finite outside the scale range (`stat_ydensity()`).
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning: Removed 2 rows containing non-finite outside the scale range (`stat_ydensity()`).
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning: Removed 79 rows containing non-finite outside the scale range (`stat_ydensity()`).
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning: Removed 26 rows containing non-finite outside the scale range (`stat_ydensity()`).
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning: Removed 15 rows containing non-finite outside the scale range (`stat_ydensity()`).
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning in scale_y_continuous(trans = "log10") :
log-10 transformation introduced infinite values.
Warning: Removed 10 rows containing non-finite outside the scale range (`stat_ydensity()`).
ggsave(filename = 'figures/bcell_MLEcellsubclusts_contvar_metadats.png',
plts,
width = 20,
height = 14)
## Define discrete variables
discvars <- list("tissuename", "class", "clust", 'context', 'position.vs.glom')
## B-cells
plts <- lapply(discvars, function(d) {
ggplot(bcell_seurat@meta.data,
aes_string(x = "bcell_subclust", fill = d)) +
geom_bar()
})
plts <- ggarrange(plotlist=plts,
labels = discvars,
common.legend = F)
ggsave(filename = 'figures/bcell_MLEcell_discvar_metadats.png',
plts,
width = 20,
height = 15)
# B-cells
## look at over-representation of clusters in each class
bcell_unsup_lupusclass_chisq <- chisq.test(table(bcell_seurat@meta.data$class,
bcell_seurat@meta.data$bcell_subclust))
Warning in chisq.test(table(bcell_seurat@meta.data$class, bcell_seurat@meta.data$bcell_subclust)) :
Chi-squared approximation may be incorrect
bcell_unsup_lupusclass_chisq_res <- melt(bcell_unsup_lupusclass_chisq$residuals)
colnames(bcell_unsup_lupusclass_chisq_res) <- c('class',
'cluster',
'residual')
bcell_unsup_lupusclass_chisq_res %>%
arrange(plyr::desc(residual))
## most over-represented cell subset in each cluster, along with residual
bcell_unsup_class_overrep <- bcell_unsup_lupusclass_chisq_res %>%
group_by(cluster) %>%
slice_max(n=1, order_by=residual) %>%
summarize(cluster=cluster, class=class, max_residual=residual, )
## plot class vs cluster with underlying plot of the class most over-represented and its chi-sq residual
## Most interesting are c, e, h, m, and t (residuals > 5)
ggplot() +
geom_bar(data=bcell_seurat@meta.data,
color="black",
aes(x=bcell_subclust,
fill=class)) +
geom_point(data=bcell_unsup_class_overrep,
color="black",
shape=21,
aes(x=cluster,
y=-30,
fill=class,
size=max_residual)) +
labs(title = 'B-cell Subcluster Prevalence across Lupus Nephritis Classes') +
ylab('Number of cells') +
xlab('B-cell subluster ID') +
guides(fill=guide_legend(title="LN Class"),
size=guide_legend(title='ChiSq Residual'))
ggsave('figures/bcell_subclusterIDvsLNClass.png')
Saving 7.29 x 4.5 in image
# ok, screw that. Let's do a diseased vs undiseased test first instead
bcell_seurat@meta.data$disease = 'LN'
bcell_seurat@meta.data[which(bcell_seurat@meta.data$class == 'control'),'disease'] <- 'Control'
bcell_subclust_chisq_dz <- bind_rows(lapply(new, function(cl) {
print(cl)
df <- bcell_seurat@meta.data
df$cl <- cl
df$cl <- as.character(df$cl)
df[which(df$bcell_subclust != cl),'cl'] <- 'other clusters'
chisq <- chisq.test(table(df$disease, df$cl))
return(cbind(data.frame(subcluster = cl), broom::tidy(chisq)))
}))
[1] B.4
Levels: B.1 B.2 B.3 B.4
[1] B.1
Levels: B.1 B.2 B.3 B.4
Warning in chisq.test(table(df$disease, df$cl)) :
Chi-squared approximation may be incorrect
[1] B.3
Levels: B.1 B.2 B.3 B.4
[1] B.2
Levels: B.1 B.2 B.3 B.4
bcell_subclust_chisq_dz$p.value.adj = p.adjust(bcell_subclust_chisq_dz$p.value,
method = 'BH')
fig <- ggplot() +
geom_bar(data = bcell_seurat@meta.data,
aes(y = disease,
fill = bcell_subclust),
position = 'fill',
color = 'black') +
geom_point(data = data.frame(x=c(0.15, 0.69),
y=c('control','sle')),
aes(x=x,y=y),
shape=8) +
scale_fill_manual(values = bcellcols,
guide = guide_legend(title = "B-cell\nsubcluster",
keyheight = 0.5,
keywidth = 0.5)) +
scale_x_continuous(labels = scales::percent) +
ylab(label = element_blank()) +
xlab(label = element_blank())
ggsave(filename = 'figures/bcell_subclust_lupusclass.svg',
plot = fig,
width = 3,
height = 1,
units = "in",
device = svg)
bcell_subclust_chisq_dz
NA
context <- readRDS('processed_data/context4.RDS')
context <- annot[,c('cell_ID', 'context')]
#bcell_seurat@meta.data <- merge(bcell_seurat@meta.data, context, by = 'cell_ID')
df <- melt(table(bcell_seurat@meta.data[,#which(bcell_seurat@meta.data$disease == 'LN'),
c('context', 'bcell_subclust', 'disease')]))
# Get the percentage of B.3 cells in hotspots, and overall
all_cell_perc <- df %>% group_by(bcell_subclust) %>% summarize(sum(value)/sum(df$value))
hotspot_perc <- subset(df, context == 'hotspot') %>% group_by(bcell_subclust) %>% summarize(sum(value) / sum(df[which(df$context == 'hotspot'),'value']))
# perform a chisq
chisqtable <- table(data.frame(
B.3 = sapply(bcell_seurat@meta.data$bcell_subclust, function(c) {c=='B.3'}),
hotspot = sapply(bcell_seurat@meta.data$context, function(c) {c=='hotspot'})))
chisq.test(chisqtable,
)
Pearson's Chi-squared test with Yates' continuity correction
data: chisqtable
X-squared = 133.67, df = 1, p-value < 2.2e-16
fig <- ggplot() +
geom_bar(data = bcell_seurat@meta.data,
aes(y = bcell_subclust,
fill = context),
position = 'fill',
color = 'black') +
scale_fill_manual(values = c('#80b1d3', '#fb8072', '#bebada', '#fdb462')) +
scale_x_continuous(labels = scales::percent) +
ylab(label = 'B-cell\nSubcluster') +
xlab(label = element_blank()) +
labs(fill = "Location") +
theme(legend.position = "bottom",
legend.key.size = unit(0.3, "cm"),
legend.margin = margin(t = -0.5, unit = "cm"),
legend.title = element_text(size = 10)) +
guides(fill = guide_legend(title.position = 'top',
nrow = 4))
ggsave(filename = 'figures/bcell_subclust_hotspots.svg',
plot = fig,
width = 2,
height = 2,
units = "in",
device = svg)
# B-cells
# set identity of cells for finding markers to the clusters discovered with MLEcell
Idents(object = bcell_seurat) <- bcell_seurat@meta.data$'bcell_subclust'
bcell_MLE_markers <- FindAllMarkers(bcell_seurat,
only.pos = TRUE,
min.pct = 0.25,
logfc.threshold = 0.25)
Calculating cluster B.1
For a more efficient implementation of the Wilcoxon Rank Sum Test,
(default method for FindMarkers) please install the limma package
--------------------------------------------
install.packages('BiocManager')
BiocManager::install('limma')
--------------------------------------------
After installation of limma, Seurat will automatically use the more
efficient implementation (no further action necessary).
This message will be shown once per session
| | 0 % ~calculating
|++++ | 6 % ~00s
|+++++++ | 12% ~00s
|++++++++++ | 19% ~00s
|+++++++++++++ | 25% ~00s
|++++++++++++++++ | 31% ~00s
|+++++++++++++++++++ | 38% ~00s
|++++++++++++++++++++++ | 44% ~00s
|+++++++++++++++++++++++++ | 50% ~00s
|+++++++++++++++++++++++++++++ | 56% ~00s
|++++++++++++++++++++++++++++++++ | 62% ~00s
|+++++++++++++++++++++++++++++++++++ | 69% ~00s
|++++++++++++++++++++++++++++++++++++++ | 75% ~00s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=00s
Calculating cluster B.2
| | 0 % ~calculating
|+++ | 4 % ~01s
|+++++ | 8 % ~00s
|+++++++ | 12% ~00s
|+++++++++ | 17% ~00s
|+++++++++++ | 21% ~00s
|+++++++++++++ | 25% ~00s
|+++++++++++++++ | 29% ~00s
|+++++++++++++++++ | 33% ~00s
|+++++++++++++++++++ | 38% ~00s
|+++++++++++++++++++++ | 42% ~00s
|+++++++++++++++++++++++ | 46% ~00s
|+++++++++++++++++++++++++ | 50% ~00s
|++++++++++++++++++++++++++++ | 54% ~00s
|++++++++++++++++++++++++++++++ | 58% ~00s
|++++++++++++++++++++++++++++++++ | 62% ~00s
|++++++++++++++++++++++++++++++++++ | 67% ~00s
|++++++++++++++++++++++++++++++++++++ | 71% ~00s
|++++++++++++++++++++++++++++++++++++++ | 75% ~00s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~00s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=00s
Calculating cluster B.3
| | 0 % ~calculating
|++ | 4 % ~01s
|++++ | 8 % ~00s
|++++++ | 12% ~00s
|++++++++ | 15% ~00s
|++++++++++ | 19% ~00s
|++++++++++++ | 23% ~00s
|++++++++++++++ | 27% ~00s
|++++++++++++++++ | 31% ~00s
|++++++++++++++++++ | 35% ~00s
|++++++++++++++++++++ | 38% ~00s
|++++++++++++++++++++++ | 42% ~00s
|++++++++++++++++++++++++ | 46% ~00s
|+++++++++++++++++++++++++ | 50% ~00s
|+++++++++++++++++++++++++++ | 54% ~00s
|+++++++++++++++++++++++++++++ | 58% ~00s
|+++++++++++++++++++++++++++++++ | 62% ~00s
|+++++++++++++++++++++++++++++++++ | 65% ~00s
|+++++++++++++++++++++++++++++++++++ | 69% ~00s
|+++++++++++++++++++++++++++++++++++++ | 73% ~00s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~00s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~00s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 88% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=00s
Calculating cluster B.4
| | 0 % ~calculating
|+ | 2 % ~01s
|++ | 4 % ~01s
|+++ | 6 % ~01s
|++++ | 7 % ~00s
|+++++ | 9 % ~00s
|++++++ | 11% ~00s
|+++++++ | 13% ~00s
|++++++++ | 15% ~00s
|+++++++++ | 17% ~00s
|++++++++++ | 19% ~00s
|+++++++++++ | 20% ~00s
|++++++++++++ | 22% ~00s
|+++++++++++++ | 24% ~00s
|+++++++++++++ | 26% ~00s
|++++++++++++++ | 28% ~00s
|+++++++++++++++ | 30% ~00s
|++++++++++++++++ | 31% ~00s
|+++++++++++++++++ | 33% ~00s
|++++++++++++++++++ | 35% ~00s
|+++++++++++++++++++ | 37% ~00s
|++++++++++++++++++++ | 39% ~00s
|+++++++++++++++++++++ | 41% ~00s
|++++++++++++++++++++++ | 43% ~00s
|+++++++++++++++++++++++ | 44% ~00s
|++++++++++++++++++++++++ | 46% ~00s
|+++++++++++++++++++++++++ | 48% ~00s
|+++++++++++++++++++++++++ | 50% ~00s
|++++++++++++++++++++++++++ | 52% ~00s
|+++++++++++++++++++++++++++ | 54% ~00s
|++++++++++++++++++++++++++++ | 56% ~00s
|+++++++++++++++++++++++++++++ | 57% ~00s
|++++++++++++++++++++++++++++++ | 59% ~00s
|+++++++++++++++++++++++++++++++ | 61% ~00s
|++++++++++++++++++++++++++++++++ | 63% ~00s
|+++++++++++++++++++++++++++++++++ | 65% ~00s
|++++++++++++++++++++++++++++++++++ | 67% ~00s
|+++++++++++++++++++++++++++++++++++ | 69% ~00s
|++++++++++++++++++++++++++++++++++++ | 70% ~00s
|+++++++++++++++++++++++++++++++++++++ | 72% ~00s
|++++++++++++++++++++++++++++++++++++++ | 74% ~00s
|++++++++++++++++++++++++++++++++++++++ | 76% ~00s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~00s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~00s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~00s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~00s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=00s
bcell_MLE_markers <- merge(bcell_MLE_markers,
data.frame(contam[,c("B-cell", "plasmablast")]),
by.x = 'gene',
by.y = 'row.names',
all.x=T)
# Retrive top statistically significant markers
bcell_MLE_markers_top5 <- bcell_MLE_markers %>%
filter(p_val_adj < 0.01) %>%
group_by(cluster) %>%
slice_max(n = 5, order_by = avg_log2FC)
# Plot the cluster and the top three markers on UMAP, with an additional label showing the top 5 genes with genes affected by contamination in RED
for(cl in unique(bcell_MLE_markers_top5$cluster)) {
df <- bcell_MLE_markers_top5 %>%
filter(cluster == cl) %>%
arrange(desc(avg_log2FC))
plts <-lapply(df$gene, function(x) {
FeaturePlot(bcell_seurat_fil, x, max.cutoff="q99", pt.size=0.2) + ggtitle(x)
})
dat <- bcell_seurat_fil@meta.data
dat$alp_cluster <- sapply(dat$bcell_subclust,
function(x){
if(x==cl){
return(1)} else {
return(0.2)
}})
col_ref_table <- data.frame(bcell_subclust = new,
clust_color = bcellcols[1:length(new)])
col_ref_table$clust_color <- apply(col_ref_table,
1,
function(x){
if(x[1]==cl) {
return(x[2])
} else {
return('#9E9E9E')
}
})
p4 <- ggplot(dat,
aes(x=UMAP_1,
y=UMAP_2,
color=bcell_subclust,
alpha=alp_cluster)) +
geom_point(size=0.2) +
scale_color_manual(values=col_ref_table$clust_color) +
theme(legend.position="none",
plot.margin= margin(0.5,6,0.5,0.5,unit='cm'))
df$pval_adj <- sapply(df$p_val_adj, function(x) sprintf("%.2e", x))
df$log2FC <- sapply(df$avg_log2FC, function(x) round(x, digits = 2))
p5 <- gridExtra::tableGrob(df[,c('gene',
'p_val_adj',
'log2FC',
'pct.1',
'pct.2'
)])
if(length(plts)==1) {G1 <- (plts[[1]] | plot_spacer() | plot_spacer()) / (p4|p5|plot_spacer()) } else
if(length(plts)==2) {G1 <- (plts[[1]] | plts[[2]] | plot_spacer()) / (p4|p5|plot_spacer()) } else
{G1 <- (plts[[1]] | plts[[2]] | plts[[3]]) / (p4|p5|plot_spacer()) }
ggsave(paste0('figures/bcell_subclust_',cl,'_markergenes.png',
sep=""),
G1,
width=10,
height=5,
units='in')
}
write.csv(bcell_MLE_markers, paste0('bcell_MLE_markers.csv'))
goi <- c('IGHM', 'IGHA1', 'IGHG1', 'XBP1', 'HLA-DQA1', 'HLA-DPA1')
# Make a list of feature plots
figs <- lapply(goi, function(g) {
FeaturePlot(bcell_seurat_fil,
features = g,
pt.size = 0.1,
max.cutoff = 'q95') +
## add my theme
my_theme +
## make it publication ready
theme(
axis.text.x = element_blank(),
axis.text.y = element_blank(),
axis.title.x = element_blank(),
axis.title.y = element_blank(),
plot.title = element_text(face = "italic",
size = 10),
axis.ticks = element_blank(),
legend.position = "none"
)})
# Put feature plots together
faceted_plot <- wrap_plots(plotlist = figs,
ncol = 2)
# Plot it
ggsave(filename = 'figures/bcell_subclust_goi.svg',
plot = faceted_plot,
width = 2.5,
height = 4,
units = "in",
device = svg)
df <- bcell_seurat@meta.data %>%
filter(!tissue %in% c("SP20_1098", "SP20_10838")) %>%
group_by(tissue, disease) %>%
summarize(number_bcells = n())
`summarise()` has grouped output by 'tissue'. You can override using the `.groups` argument.
wilcox.test(unlist(df[which(df$disease == 'Control'), 'number_bcells']),
unlist(df[which(df$disease == 'LN'), 'number_bcells']),
alternative = 'less')
Wilcoxon rank sum exact test
data: unlist(df[which(df$disease == "Control"), "number_bcells"]) and unlist(df[which(df$disease == "LN"), "number_bcells"])
W = 0, p-value = 0.00202
alternative hypothesis: true location shift is less than 0
ggplot(df,
aes(x = disease,
y = number_bcells,
fill = disease)) +
geom_boxplot(outlier.shape = NA) +
geom_jitter() +
scale_fill_manual(values = c('#0571b0', '#ca0020')) +
ylab('Number of B-cells') +
xlab(label = element_blank()) +
theme(legend.position='none')
ggsave(file = 'figures/lupuscontrols_numbcells.svg',
width = 1.5,
height = 1.5,
device = svg)
NA
NA
df <- bcell_seurat@meta.data %>%
filter(!tissue %in% c("SP20_1098", "SP20_10838")) %>%
group_by(tissue, disease, bcell_subclust) %>%
summarize(number_cells = n())
`summarise()` has grouped output by 'tissue', 'disease'. You can override using the `.groups` argument.
lapply(unique(df$bcell_subclust), function(cl) {
df <- df[which(df$bcell_subclust == cl),]
wilcox.test(unlist(df[which(df$disease == 'Control'), 'number_cells']),
unlist(df[which(df$disease == 'LN'), 'number_cells']))
})
Warning in wilcox.test.default(unlist(df[which(df$disease == "Control"), :
cannot compute exact p-value with ties
Warning in wilcox.test.default(unlist(df[which(df$disease == "Control"), :
cannot compute exact p-value with ties
Warning in wilcox.test.default(unlist(df[which(df$disease == "Control"), :
cannot compute exact p-value with ties
[[1]]
Wilcoxon rank sum test with continuity correction
data: unlist(df[which(df$disease == "Control"), "number_cells"]) and unlist(df[which(df$disease == "LN"), "number_cells"])
W = 0, p-value = 0.01863
alternative hypothesis: true location shift is not equal to 0
[[2]]
Wilcoxon rank sum exact test
data: unlist(df[which(df$disease == "Control"), "number_cells"]) and unlist(df[which(df$disease == "LN"), "number_cells"])
W = 0, p-value = 0.00404
alternative hypothesis: true location shift is not equal to 0
[[3]]
Wilcoxon rank sum test with continuity correction
data: unlist(df[which(df$disease == "Control"), "number_cells"]) and unlist(df[which(df$disease == "LN"), "number_cells"])
W = 1, p-value = 0.0317
alternative hypothesis: true location shift is not equal to 0
[[4]]
Wilcoxon rank sum test with continuity correction
data: unlist(df[which(df$disease == "Control"), "number_cells"]) and unlist(df[which(df$disease == "LN"), "number_cells"])
W = 0, p-value = 0.01837
alternative hypothesis: true location shift is not equal to 0
ggplot(df,
aes(x = disease,
y = number_cells,
fill = disease)) +
geom_boxplot(outlier.shape = NA) +
geom_jitter(width = 0.15) +
scale_fill_manual(values = c('#0571b0', '#ca0020')) +
facet_wrap(~bcell_subclust) +
ylab('Number of B-cells') +
xlab(label = element_blank()) +
theme(legend.position='none')
ggsave(file = 'figures/lupuscontrols_numbcells_subclust.svg',
width = 3.5,
height = 3.5,
device = svg)
NA
NA
bcell_seurat@meta.data <- bcell_seurat@meta.data[,which(
!(duplicated(colnames(bcell_seurat@meta.data)))
)]
df <- bcell_seurat@meta.data %>%
filter(!tissue %in% c("SP20_1098", "SP20_10838")) %>%
group_by(tissue, disease, bcell_unsup.clust) %>%
summarize(number_cells = n()) %>%
mutate(freq = number_cells/sum(number_cells))
`summarise()` has grouped output by 'tissue', 'disease'. You can override using the `.groups` argument.
wilcox.test(unlist(df[which(df$disease == 'Control'), 'number_cells']),
unlist(df[which(df$disease == 'LN'), 'number_cells']))
Warning in wilcox.test.default(unlist(df[which(df$disease == "Control"), :
cannot compute exact p-value with ties
Wilcoxon rank sum test with continuity correction
data: unlist(df[which(df$disease == "Control"), "number_cells"]) and unlist(df[which(df$disease == "LN"), "number_cells"])
W = 6.5, p-value = 4.691e-07
alternative hypothesis: true location shift is not equal to 0
ggplot() +
geom_bar(data = bcell_seurat@meta.data,
aes(x = disease,
fill = bcell_subclust),
position = 'fill',
color = 'black') +
geom_point(data = data.frame(y=c(0.15, 0.70),
x=c('Control', 'LN')),
aes(x=x,y=y),
shape=8) +
scale_fill_manual(values = bcellcols,
guide = guide_legend(title = "B-cell\nsubcluster",
keyheight = 0.5,
keywidth = 0.5)) +
scale_y_continuous(labels = scales::percent) +
ylab(label = element_blank()) +
xlab(label = element_blank())
ggsave(file = 'figures/lupuscontrols_propsubclusts.svg',
width = 2.5,
height = 3,
device = svg)
# load data
xycoords <- customlocs
row.names(xycoords) <- colnames(raw)
# calculate pairwise distance matrices for all immune cells
dists <- sapply(unique(annot$tissue), function(tis) {
cells = filter(annot, (tissue == tis &
!(cell_ID %in% HB_cells) & # remove hemoglobin+ cells from immune cells
basictype %in% c('tcell_cd4',
'tcell_cd8',
'bcell',
'mycell'))) %>% dplyr::select(cell_ID) %>% unlist
return(dist(xycoords[cells,]))
})
TO perform this analysis, each tissue must be assessed independently to prevent too muchy memory from being used.
# define function that retrieves the 50 closest cells for a given set of "cells of interest"
find_closest_cells <- function(distance_matrix,
num_closest_cells,
cois = subset(annot, basictype == 'bcell')$cell_ID) {
## filter for B cells only
distance_matrix <- sapply(cois,
function(c) {
usedist::dist_get(distance_matrix,
c,
cells)
})
row.names(distance_matrix) <- cells
print(dim(distance_matrix))
cell_names <- row.names(distance_matrix)
num_cells <- ncol(distance_matrix)
closest_cells_list <- vector("list", num_cells)
for (i in 1:num_cells) {
distances <- distance_matrix[,i]
closest_indices <- order(distances)[1:num_closest_cells]
closest_cell_names <- cell_names[closest_indices]
closest_cells_list[[i]] <- closest_cell_names
}
names(closest_cells_list) <- colnames(distance_matrix)
return(closest_cells_list)
}
# define function that takes a list of cells and counts the number of immune cells
count_imm_cells <- function(cell_list) {
annot_subset <- subset(annot, basictype %in% (c('bcell',
'mycell',
'tcell',
'NKcell')))
return(sum(sapply(cell_list, function(c) {c %in% annot_subset$cell_ID})))
}
# iterate through each tissue sample to assess the number of immune cells next to each cell
## initialize empty list
tissue_ids <- unique(annot$tissue)
num_tissues <- length(tissue_ids)
tissue_bcell_nimmune_cells <- vector("list", num_tissues)
## iterate through each tissue's xycords:
for(i in 1:num_tissues) {
print(paste0('Analzying tissue ', tissue_ids[i]))
### compute distance matrix
cells = filter(annot, (tissue == tissue_ids[i]))$cell_ID
distance_matrix <- dist(xycoords[cells,])
### get 50 closest cells to each B cell (not counting the cell itself..)
closest_cells <- find_closest_cells(distance_matrix,
51,
subset(annot,
(basictype == 'bcell' &
tissue == tissue_ids[i]))$cell_ID)
rm(distance_matrix)
gc() # save memory
### count number of immune cells in each list of 50
imm_cell_nums <- lapply(closest_cells, count_imm_cells)
### populate the empty list
tissue_bcell_nimmune_cells[[i]] <- data.frame(cell_ID = names(closest_cells),
n_imm_cells = unlist(imm_cell_nums)-1) # remove one from each to remove self
}
[1] "Analzying tissue SP17_2566"
[1] 27795 111
[1] "Analzying tissue SP21_213"
[1] 49093 1081
[1] "Analzying tissue SP17_8693"
[1] 18784 78
[1] "Analzying tissue SP18_3323"
[1] 27247 96
[1] "Analzying tissue SP18_8471"
[1] 12926 67
[1] "Analzying tissue SP19_1139"
[1] 60740 275
[1] "Analzying tissue SP19_4061"
[1] 16025 237
[1] "Analzying tissue SP20_642"
[1] 11839 479
[1] "Analzying tissue SP20_1098"
[1] 30671 111
[1] "Analzying tissue SP20_10838"
[1] 33404 323
[1] "Analzying tissue control2"
[1] 77004 7
[1] "Analzying tissue SP17-1782-A5"
[1] 26112 2
[1] "Analzying tissue SP19-5113"
[1] 130220 19
[1] "Analzying tissue SP22-5235-B14"
[1] 10532 11
tissue_bcell_nimmune_cells_df <- bind_rows(tissue_bcell_nimmune_cells)
## plot data, separating controls and SLE patients
### Prep data
tissue_bcell_nimmune_cells_df$imm_hotspot <- as.numeric(tissue_bcell_nimmune_cells_df$n_imm_cells > 0)
tissue_bcell_nimmune_cells_df <- merge(tissue_bcell_nimmune_cells_df, bcell_seurat@meta.data[,c('bcell_subclust', 'disease')], by = 'row.names')
tab <- table(tissue_bcell_nimmune_cells_df[which(tissue_bcell_nimmune_cells_df$disease=='LN'),c('bcell_subclust', 'imm_hotspot')])
tab[,1] / tab[,2]
B.1 B.2 B.3 B.4
0.06769231 0.04226705 0.01237113 0.11557789
### column for whether a cell is in an tubulointerstitial hotspot
df <- tissue_bcell_nimmune_cells_df
df$context <- sapply(df$cell_ID, function(ci) {annot[ci,'context']})
df$tubinst_hotspot <- sapply(df$context, function(c) {c == 'hotspot'})
### save df
write.csv(df, file = "num_imm_wi_50.csv")
### read df
df <- read.csv("num_imm_wi_50.csv", row.names = 1)
### plot data
ggplot(df,
aes(x = n_imm_cells,
fill = as.factor(context))) +
geom_histogram(color = 'black') +
facet_wrap(disease~ bcell_subclust,
scales = 'free_y',
nrow = 2) +
scale_fill_manual(values = c('#80b1d3', '#fb8072', '#bebada', '#fdb462')) +
ylab(label = element_blank()) +
xlab(label = 'Number of Nearby Immune Cells') +
labs(fill = "Location") +
theme(legend.position = "bottom",
legend.key.size = unit(0.3, "cm"),
legend.margin = margin(t = 0, unit = "cm"),
legend.title = element_text(size = 10))
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
ggsave(file = 'figures/lupuscontrols_numbimmcells_location_subclust.svg',
width = 6,
height = 3.5,
device = svg)
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
# fit hypergeometric parameters for each cell type for each sample
adj_matrices <- lapply(dists, function(d) {
tmp <- annot[which(annot$cell_ID %in% colnames(as.matrix(d))), c('cell_ID', 'clust')]
annot_list <- tmp$clust
names(annot_list) <- tmp$cell_ID
return(make_adj_mat(d,
annot_list,
0.1))
}); names(adj_matrices) <- names(dists)
# get parameters for hypergeometric distribution
adj_matrix_hyperparams <- lapply(seq(1, length(adj_matrices)), function(n) {
print(n)
## define the number of cell types within each distance matrix using the annot dataframe
### get the cells from the annotation dataframe
nctypes <- table(annot[which(annot$cell_ID %in% colnames(as.matrix(dists[[n]]))), 'clust'])
### reorder the nctypes to be the same as the columns in the dataset
nctypes <- nctypes[colnames(adj_matrices[[n]])]
out <- adj_mat_to_hypergeo_params(adj_matrices[[n]],
nctypes)
out$tissue <- names(dists)[n]
return(out)
}) %>% bind_rows()
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10
[1] 11
[1] 12
[1] 13
[1] 14
# look at the networks control vs lupus cases
## define control and sle samples
control_samples <- unique(annot[which(annot$class == 'control'),'tissue'])
sle_samples <- unique(annot[which(annot$class != 'control'), 'tissue'])
adj_matrix_hyperparams$disease <- 'control'
adj_matrix_hyperparams[which(adj_matrix_hyperparams$tissue %in% sle_samples),
'disease'] <- 'sle'
adj_matrix_hyperparams$ct1.2 <- t(apply(adj_matrix_hyperparams[,c('ct1', 'ct2')],
1,
function(r) {
paste(unlist(r),
sep = '_')
}))
## do the following to each set of samples:
### (1) sum hypergeometric distribution hyperparameters (m, n, k) and observed edges (x)
### (2) calculate the expected number of edges (expected.edges)
### (3) calculate the fold increase over expected (fold.incr)
### (4) calculate a p-value
sle.v.control.clust <- adj_matrix_hyperparams %>%
dplyr::group_by(ct1, ct2, disease) %>%
summarise(m = sum(m),
n = sum(n),
k = sum(k),
x = sum(x),
expected.edges = max(c(qhyper(p=0.5,
m = sum(m),
k = sum(k),
n = sum(n)),
0.5)),
p.val = max(c(phyper(q=sum(x),
m=sum(m),
k=sum(k),
n=sum(n),
lower.tail = F,
log.p = F),
1e-30)))
`summarise()` has grouped output by 'ct1', 'ct2'. You can override using the `.groups` argument.
# add log2FC of observed over expected
sle.v.control.clust$log2.o.e <- log2(sle.v.control.clust$x/sle.v.control.clust$expected.edges)
## adjust p-value for sle and controls separately
### sle
sle <- sle.v.control.clust[which(sle.v.control.clust$disease == 'sle'),]
sle$p.adj <- p.adjust(sle$p.val,
method = 'BH')
### control
ctrl <- sle.v.control.clust[which(sle.v.control.clust$disease == 'control'),]
ctrl$p.adj <- p.adjust(ctrl$p.val,
method = 'BH')
# plot the results
## make a key of abbreviated names
key_df <- t(data.frame(c('B-cell', "Bc"),
c("plasmablast", "PC"),
c("macrophage", "Mφ"),
c("mast", "Mast"),
c("mDC", "mDC"),
c("pDC", "pDC"),
c("monocyte", "Mono"),
c("neutrophil", "Neut"),
c("tcell_cd4", "Tc4"),
c("tcell_cd8", "Tc8"),
c('B.1', 'B.1'),
c('B.2', 'B.2'),
c('B.3', 'B.3'),
c('B.4', 'B.4')))
key_vector <- key_df[,2]
names(key_vector) <- key_df[,1]
## make a color coded list
colors <- c(rep('#8da0cb', 2), rep('#fc8d62', 6), rep('#66c2a5', 2), rep('#8da0cb', 4))
names(colors) <- key_df[,2]
## apply the key to the sle dataset
sle$ct1_abr <- sapply(sle$ct1, function(c) {key_vector[c]})
sle$ct2_abr <- sapply(sle$ct2, function(c) {key_vector[c]})
## sle
sle.fil.g <- graph_from_data_frame(sle[which(sle$p.adj < 0.01),
c('ct1_abr',
'ct2_abr',
'log2.o.e',
'p.adj'
)],
directed = F)
sle.fil.g <- set_vertex_attr(sle.fil.g, "color", value = colors[get.vertex.attribute(sle.fil.g, "name")])
Warning: `get.vertex.attribute()` was deprecated in igraph 2.0.0.
ℹ Please use `vertex_attr()` instead.
This warning is displayed once every 8 hours.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
## remove self-interacting nodes
g <- sle.fil.g
sle.fil.g_noself <- igraph::simplify(g, remove.loops = TRUE)
custom_layout <- layout_with_fr(sle.fil.g_noself)
### try to plot with normal plots
#### NB: need to copy and paste into the console, cannot run from here
dev.new(noRStudioGD = T)
svg(filename = 'figures/graph_interactions_sle.svg',
onefile=T)
plot(sle.fil.g_noself,
vertex.label = V(sle.fil.g)$name,
vertex.color = V(sle.fil.g)$color,
edge.color = adjustcolor("black", alpha.f = 0.5),
edge.width = 2^E(sle.fil.g)$log2.o.e,
layout = custom_layout,
vertex.label.family = "Arial",
vertex.label.color = 'black',
vertex.label.cex = 0.8,
vertex.size = 25)
leg_incr <- c(2,5,10)
legend("topleft",
legend=as.character(leg_incr),
col=adjustcolor("black", alpha.f=0.5),
lwd=c(leg_incr),
title="Obs/Exp Interactions")
dev.off()
png
2
### plot as heat-map type thing
ggplot(subset(sle, p.adj < 0.01),
aes(x = ct1_abr,
y = ct2_abr,
size = log2.o.e,
color = log10(p.adj))) +
geom_point() +
scale_color_viridis_b() +
theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))
## control
## apply the key to the sle dataset
ctrl$ct1_abr <- sapply(ctrl$ct1, function(c) {key_vector[c]})
ctrl$ct2_abr <- sapply(ctrl$ct2, function(c) {key_vector[c]})
ctrl.fil.g <- graph_from_data_frame(ctrl[which(ctrl$p.adj < 0.01),
c('ct1_abr',
'ct2_abr',
'log2.o.e',
'p.adj'
)],
directed = F)
ctrl.fil.g <- set_vertex_attr(ctrl.fil.g, "color", value = colors[get.vertex.attribute(ctrl.fil.g, "name")])
## remove self-interacting nodes
g <- ctrl.fil.g
ctrl.fil.g_noself <- igraph::simplify(g, remove.loops = TRUE)
custom_layout <- layout_with_fr(ctrl.fil.g_noself)
### try to plot with normal plots
#### NB: need to copy and paste into the console, cannot run from here
dev.new(noRStudioGD = T)
svg(filename = 'figures/graph_interactions_ctrl.svg',
onefile=T)
plot(ctrl.fil.g_noself,
vertex.label = V(ctrl.fil.g)$name,
vertex.color = V(ctrl.fil.g)$color,
edge.color = adjustcolor("black", alpha.f = 0.5),
edge.width = 2^E(ctrl.fil.g)$log2.o.e,
layout = custom_layout,
vertex.label.family = "Arial",
vertex.label.color = 'black',
vertex.label.cex = 0.8,
vertex.size = 25)
leg_incr <- c(2,5,10)
legend("bottomright",
legend=as.character(leg_incr),
col=adjustcolor("black", alpha.f=0.5),
lwd=c(leg_incr),
title="Obs/Exp Interactions")
dev.off()
png
2
Repeating the analysis above but including B-cell subclusters
# update annot dataframe to combine B-cell subclusters in a new column, "clust_bcellsubcl"
annot$clust_bcellsubcl <- annot$clust
bcellrows <- which(annot$clust %in% c('B-cell', 'plasmablast'))
row.names(bcell_seurat@meta.data) <- bcell_seurat@meta.data$cell_ID
annot[bcellrows,'clust_bcellsubcl'] <- as.character(bcell_seurat@meta.data[annot$cell_ID[bcellrows],
'bcell_subclust'])
annot_norbcs <- annot[which(!(is.na(annot$clust_bcellsubcl))),]
# Combine T cell subsets in the clust_bcellsubcl
tcells <- subset(annot, ((basictype == 'tcell_cd4') | (basictype == 'tcell_cd8')))$cell_ID
annot[tcells,]$clust_bcellsubcl <- annot[tcells,'basictype']
# get an adjacency matrix for all subcluster cells
adj_matrices_subclust <- lapply(dists, function(d) {
tmp <- annot_norbcs[which(annot_norbcs$cell_ID %in% colnames(as.matrix(d))), c('cell_ID', 'clust_bcellsubcl')]
annot_list <- tmp$clust_bcellsubcl
names(annot_list) <- tmp$cell_ID
return(make_adj_mat(d,
annot_list,
0.1))
}); names(adj_matrices_subclust) <- names(dists)
# get parameters for hypergeometric distribution
adj_matrix_hyperparams_subclust <- lapply(seq(1, length(adj_matrices_subclust)), function(n) {
print(n)
## define the number of cell types within each distance matrix using the annot dataframe
### get the cells from the annotation dataframe
nctypes <- table(annot_norbcs[which(annot_norbcs$cell_ID %in% colnames(as.matrix(dists[[n]]))), 'clust_bcellsubcl'])
### reorder the nctypes to be the same as the columns in the dataset
nctypes <- nctypes[colnames(adj_matrices_subclust[[n]])]
out <- adj_mat_to_hypergeo_params(adj_matrices_subclust[[n]],
nctypes)
out$tissue <- names(dists)[n]
return(out)
}) %>% bind_rows()
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10
[1] 11
[1] 12
[1] 13
[1] 14
# look at subclusters in control vs lupus samples
adj_matrix_hyperparams_subclust$disease <- 'control'
adj_matrix_hyperparams_subclust[which(adj_matrix_hyperparams_subclust$tissue %in% sle_samples),
'disease'] <- 'sle'
sle.v.control_subclust <- adj_matrix_hyperparams_subclust %>%
dplyr::group_by(ct1, ct2, disease) %>%
summarise(m = sum(m),
n = sum(n),
k = sum(k),
x = sum(x),
expected.edges = max(c(qhyper(p=0.5,
m = sum(m),
k = sum(k),
n = sum(n)),
0.5)),
p.val = max(c(phyper(q=sum(x),
m=sum(m),
k=sum(k),
n=sum(n),
lower.tail = F,
log.p = F),
1e-30)))
`summarise()` has grouped output by 'ct1', 'ct2'. You can override using the `.groups` argument.
# add log2FC of observed over expected
sle.v.control_subclust$log2.o.e <- log2(sle.v.control_subclust$x/sle.v.control_subclust$expected.edges)
# add simple ratio
sle.v.control_subclust$o.e <- sle.v.control_subclust$x/sle.v.control_subclust$expected.edges
## adjust p-value for sle and controls separately
### sle
sle <- sle.v.control_subclust[which(sle.v.control_subclust$disease == 'sle'),]
sle$p.adj <- p.adjust(sle$p.val,
method = 'BH')
sle[which(sle$p.adj == 0),'p.adj'] <- 1e-30
### control
ctrl <- sle.v.control_subclust[which(sle.v.control_subclust$disease == 'control'),]
ctrl$p.adj <- p.adjust(ctrl$p.val,
method = 'BH')
# plot the results
## apply the key to the sle dataset
sle$ct1_abr <- sapply(sle$ct1, function(c) {key_vector[c]})
sle$ct2_abr <- sapply(sle$ct2, function(c) {key_vector[c]})
## sle
sle.fil.g <- graph_from_data_frame(sle[which(sle$p.adj < 0.01),
c('ct1_abr',
'ct2_abr',
'log2.o.e',
'p.adj'
)],
directed = F)
sle.fil.g <- set_vertex_attr(sle.fil.g, "color", value = colors[get.vertex.attribute(sle.fil.g, "name")])
## remove self-interacting nodes
g <- sle.fil.g
sle.fil.g_noself <- igraph::simplify(g, remove.loops = TRUE)
custom_layout <- layout_with_fr(sle.fil.g_noself)
### try to plot with normal plots
#### NB: need to copy and paste into the console, cannot run from here
dev.new(noRStudioGD = T)
svg(filename = 'figures/graph_interactions_sle.svg',
onefile=T)
plot(sle.fil.g_noself,
vertex.label = V(sle.fil.g)$name,
vertex.color = V(sle.fil.g)$color,
edge.color = adjustcolor("black", alpha.f = 0.5),
edge.width = 2^E(sle.fil.g)$log2.o.e,
layout = custom_layout,
vertex.label.family = "Arial",
vertex.label.color = 'black',
vertex.label.cex = 0.8,
vertex.size = 25)
leg_incr <- c(2,5,10)
legend("topleft",
legend=as.character(leg_incr),
col=adjustcolor("black", alpha.f=0.5),
lwd=c(leg_incr),
title="Obs/Exp Interactions")
dev.off()
png
2
## control
## apply the key to the sle dataset
ctrl$ct1_abr <- sapply(ctrl$ct1, function(c) {key_vector[c]})
ctrl$ct2_abr <- sapply(ctrl$ct2, function(c) {key_vector[c]})
ctrl.fil.g <- graph_from_data_frame(ctrl[which(ctrl$p.adj < 0.01),
c('ct1_abr',
'ct2_abr',
'log2.o.e',
'p.adj'
)],
directed = F)
ctrl.fil.g <- set_vertex_attr(ctrl.fil.g, "color", value = colors[get.vertex.attribute(ctrl.fil.g, "name")])
## remove self-interacting nodes
g <- ctrl.fil.g
ctrl.fil.g_noself <- igraph::simplify(g, remove.loops = TRUE)
custom_layout <- layout_with_fr(ctrl.fil.g_noself)
### try to plot with normal plots
#### NB: need to copy and paste into the console, cannot run from here
dev.new(noRStudioGD = T)
svg(filename = 'figures/graph_interactions_ctrl.svg',
onefile=T)
plot(ctrl.fil.g_noself,
vertex.label = V(ctrl.fil.g)$name,
vertex.color = V(ctrl.fil.g)$color,
edge.color = adjustcolor("black", alpha.f = 0.5),
edge.width = 2^E(ctrl.fil.g)$log2.o.e,
layout = custom_layout,
vertex.label.family = "Arial",
vertex.label.color = 'black',
vertex.label.cex = 0.8,
vertex.size = 25)
leg_incr <- c(2,5,10)
legend("topright",
legend=as.character(leg_incr),
col=adjustcolor("black", alpha.f=0.5),
lwd=c(leg_incr),
title="Obs/Exp Interactions")
dev.off()
png
2
# make adjacency matrix of all immune cells
adj_matrices_imms <- lapply(dists, function(d) {
tmp <- annot[which(annot$cell_ID %in% rownames(as.matrix(d))), c('cell_ID', 'clust_bcellsubcl')]
annot_list <- tmp$clust
names(annot_list) <- tmp$cell_ID
return(make_adj_mat(d,
annot_list,
0.1,
collapse_query = F)) }) %>%
bind_rows() %>%
## merge in information about location of the query cells
merge(.,
bcell_seurat@meta.data[,c('cell_ID',
'disease',
'context')],
by.x = 'row.names',
by.y = 'cell_ID')
## rename the cell_ID column
colnames(adj_matrices_imms)[1] <- "cell_ID"
## replace NA with 0
adj_matrices_imms <- replace(adj_matrices_imms, is.na(adj_matrices_imms), 0)
# filter for just B.3 cells in LN
# make a dataframe with the number of interactions for each group within each context
cell_types <- colnames(adj_matrices_imms)[2:13]
df <- adj_matrices_imms %>% subset(celltype == 'B.3' &
disease == 'LN') %>%
group_by(context) %>%
summarise(across(all_of(cell_types), sum, .names = "{.col}")) %>%
t(.) %>% as.data.frame(); colnames(df) <- df[1,]; df <- df[-1,]
# melt the df such that it can be plotte in ggplot2
df$interacting_cell <- row.names(df)
df_plot <- melt(df, id.vars = 'interacting_cell')
df_plot$value <- as.numeric(df_plot$value)
df_plot_props <- df_plot %>% group_by(interacting_cell) %>% summarise(contex = variable,
prop_contex = value / sum(value))
Warning: Returning more (or less) than 1 row per `summarise()` group was deprecated in dplyr 1.1.0.
ℹ Please use `reframe()` instead.
ℹ When switching from `summarise()` to `reframe()`, remember that `reframe()` always returns an ungrouped data frame and
adjust accordingly.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
`summarise()` has grouped output by 'interacting_cell'. You can override using the `.groups` argument.
df_plot_ns <- df_plot %>% group_by(interacting_cell) %>% summarise(totn = sum(value))
plt <- ggplot() +
geom_bar(data = df_plot_props,
aes(x = interacting_cell,
y = prop_contex,
fill = contex),
color = 'black',
stat = 'identity') +
geom_text(data = df_plot_ns,
aes(x = interacting_cell,
y = 1.05,
angle = 45,
label = totn),
size = 3,
hjust = 0) +
scale_fill_manual(values = c('#80b1d3', '#fb8072', '#bebada', '#fdb462')) +
scale_y_continuous(expand = expand_scale(mult = c(0, 0.12)),
breaks = seq(0,1,0.25)) +
scale_x_discrete(expand = expand_scale(mult = c(0, 0.1))) +
theme(axis.text.x = element_text(angle = 45, hjust = 1),
axis.title.y = element_blank()) +
xlab(label = 'B.3-interacting Cell') +
labs(fill = "Context")
Warning: `expand_scale()` was deprecated in ggplot2 3.3.0.
ℹ Please use `expansion()` instead.
This warning is displayed once every 8 hours.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
ggsave(plt,
file = 'figures/B3_interactioncontext_SLE.svg',
width = 5,
height = 3.5,
device = svg)